【问题标题】:Jenkins Sonar plugin throws duplicate source file error during analysisJenkins Sonar 插件在分析过程中抛出重复的源文件错误
【发布时间】:2012-05-22 07:15:33
【问题描述】:

我已经使用 MySQL 数据库设置了 Sonar。我的项目是一个多模块 eclipse 项目,这意味着它有多个插件。 我已经使用 Maven 建立了一个 Jenkins 构建来构建这个项目,并且还安装了 Jenkins Sonar 插件来使用声纳分析代码。 所有的配置似乎都是正确的。但是,当 sonar 在构建后尝试分析此项目时,它会抱怨源代码重复并且构建失败。 每个 Eclipse 插件都有 Activator.java 类,Sonar 抱怨这是重复的。我已将此类从分析中排除,但 Sonar 抱怨特定插件中的类被添加为许多其他插件的依赖项。 对代码的不完整分析会导致该项目的 Sonar 中出现其他问题。就像,即使项目在 Sonar 仪表板中可见,它也会在单击项目时再次要求身份验证,即使我以管理员身份登录。

任何关于将我指向正确方向的意见都会非常有帮助。

如果需要任何其他输入以更好地理解我的问题,请告诉我。

【问题讨论】:

    标签: maven jenkins sonarqube


    【解决方案1】:

    IMO,您可以效仿的最佳示例是我们的 Sonar Eclipse 项目:https://github.com/SonarSource/sonar-eclipse。这也是一个多模块的 Eclipse 项目。

    在这个例子中,你想看看父模块(https://github.com/SonarSource/sonar-eclipse/tree/master/org.sonar.ide.eclipse.parent),它的目标只是定义父 POM。几乎所有事情都发生在那里。

    我想你应该多亏了这个。

    【讨论】:

    • 谢谢法布里斯。我绝对认为你正在为我指明正确的方向。我没有完全得到你关于一个 Sonar 项目的第一个问题。如前所述,我正在使用 Maven 构建我的项目,并且我有一个根 pom.xml,它是所有模块的父级,我有一个 pom.xml,它列出了扩展根 pom.xml 的所有模块。我将此 pom.xml 作为 Jenkins 构建作业中声纳配置中的根 pom。您能否进一步了解定义声纳模块。作为一个简单的例子,我会朝着正确的方向思考。
    【解决方案2】:

    我能够通过删除父 pom.xml 中的 test 标记来解决此问题。这以某种方式导致声纳抛出重复的源错误。找出根本原因是一项乏味的任务,我不得不从头开始重建 pom.xml,逐节添加。

    感谢大家的帮助。

    【讨论】:

    • “test”标签是什么意思?我也有 maven-compiler-plugin 3.3 的“重复类”错误,但仅在使用声纳构建时。请给我更多关于这个“测试”标签的细节。
    猜你喜欢
    • 2023-03-18
    • 1970-01-01
    • 2015-10-18
    • 2013-10-25
    • 2012-06-30
    • 2018-08-11
    • 2023-01-24
    • 2020-10-01
    • 2017-04-30
    相关资源
    最近更新 更多