gpt4 book ai didi

jenkins - 在 jenkins 插件中正确设置 sonar.sources

转载 作者:行者123 更新时间:2023-12-05 00:28:06 25 4
gpt4 key购买 nike

我正在尝试构建一个 Android java项目分支:功能-Fprototype_app

我收到此错误:

[INFO] [13:38:36.470] Base dir: /Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile 
[INFO] [13:38:36.470] Working dir: /Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile/target/sonar
[INFO] [13:38:36.470] Source dirs: /Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile/src
[INFO] [13:38:36.470] Binary dirs: /Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile/target/classes
[INFO] [13:38:36.470] Source encoding: UTF-8, default locale: en_US
[INFO] [13:38:36.489] Sensor JavaSourceImporter...
[INFO] [13:38:36.710] Sensor JavaSourceImporter done: 221 ms
[INFO] [13:38:36.710] Sensor JavaSquidSensor...
[INFO] [13:38:36.800] Java AST scan...
[ERROR] Sonar is unable to analyze file : '/Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile/src/main/java/com/simpragma/apps/textify/db/BookmarkDao.java'
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] -------------------
[INFO] Total time:14.245s
[INFO] Finished at: Thu Oct 17 13:38:36 GMT+05:30 2013
[INFO] Final Memory: 14M/102M
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.1:sonar (default-cli) on project Textify: Can not execute SonarQube analysis: Sonar is unable to analyze file :

**'/Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile/src/main/java/com/simpragma/apps/textify/db/BookmarkDao.java': The source directory does not correspond to the package declaration** com.simpragma.apps.textify.db ->
[Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.1:sonar (default-cli) on project Textify: Can not execute SonarQube analysis

在 jenkins 配置中 构建后操作 我正在尝试设置 sonar.sources附加属性 框(因为当我搜索错误时,人们建议为源设置正确的路径)。我尝试了很多组合,例如:
 -Dsonar.sources=mobile/src/main/java
-Dsonar.sources=/Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile/src/main/java
-Dsonar.sources=/Users/Shared/Jenkins/Home/jobs/Textify/workspace/mobile

还是一样的错误。
我究竟做错了什么 ?

好的,让我清理一下我造成的困惑。 首先,它是一个 android maven 项目。包结构为 com.xyz.abc,源根目录为 src/main/java。在 pom.xml 中 源目录属性最初设置为指向 .似乎 maven 对源的根目录没有任何问题,它正在编译项目。
然后,我为这个项目设置了 jenkins 和 Sonar 。我用了 Jenkins 的 构建后操作 在我的项目上设置 Sonar 分析。这里的问题是“当使用 Maven 运行分析时,一些 SonarQube 属性总是被忽略,因为 SonarQube 在内部从 POM 中提供它们” - SONAR-4536 .此类属性之一是 sonar.sources .因此,当我在 Jenkins 设置中尝试使用 -Dsonar.sources 时,它不起作用。
后来我修改了我的 pom 指向 src/main/java 这导致通过 jenkins post-build action 成功分析。

我希望我已经澄清了。

最佳答案

如果您的项目是 Maven 项目并且您使用的是 SonarQube Maven 插件,那么源位置取自 Maven 模型。属性 sonar.sources 仅在使用 SonarQube Runner 执行分析时使用。

查看您的项目 pom.xml 并检查 .另外请更新您的问题,以判断您是在常规 Java 项目还是其他项目(如 android)。

关于jenkins - 在 jenkins 插件中正确设置 sonar.sources,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19421694/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com