1

我目前正在为一个拥有大量 Java 代码库的大型(50 多名)开发团队部署 Sonar。我无法使用 Sonar 制定有效的工作流程。这里有一些问题:

  1. 如果开发人员使用 sonar-runner 对中央服务器扫描他们的代码:
    1. 他们需要上传大量代码,尽管他们对一小部分类感兴趣
    2. 他们在上传具有不同版本的相同文件时发生冲突
  2. 使用 Eclipse 插件在本地运行 Sonar 再次引发问题:
    1. 它分析所有代码,而您只对特定文件感兴趣
    2. 它不知道服务器上定义的误报 - 所以你被不必要的警告淹没了
  3. 我在夜间构建中集成了 Sonar,但随后开发人员仅在 T+1 收到代码问题。更糟糕的是 - 开发人员签入未扫描的代码。

我们如何实现以下工作流程:

  • 允许开发人员在签入前分析特定代码
  • 不会通过“重新打开”误报和忽略的文件来给开发人员带来负担
  • 开发人员不会“覆盖”彼此对未提交文件的分析
  • 与标准构建(Maven、SVN)集成以监控签入的内容
4

1 回答 1

1

我们在团队中所做的是,我们已将 Jenkins 配置为每次在通用 SVN 上提交代码时调用声纳。

在 Jenkins 上,我们有数千个小项目(少于 20 个类),每个程序员都可以使用他感兴趣的项目创建自己的 Dashboard 页面。

此外,您可以使用 Maven 设置 Jenkins,以便项目相互依赖。如果更改仅发生在其中一个视图项目中(通常是构建过程中的最新版本),它会阻止完全重建。

于 2012-08-08T07:13:34.930 回答