gpt4 book ai didi

ant - Sonar 插件不适用于使用 ANT 作为构建脚本的项目

转载 作者:行者123 更新时间:2023-12-04 20:34:03 25 4
gpt4 key购买 nike

问题

我刚刚安装了 Sonar Jenkins 插件。我进入了我配置的作业(一个自由风格的作业),它通过 ANT 构建生成一个 WAR 文件 Artifact ,并执行如下操作:

  1. 选中“Sonar ”复选框。 (这里没问题)

  2. 配置sonar的安装目录(这里没有问题)

  3. 勾选了复选框:“检查这个项目是否不是用 maven 2 构建的”(我在这里很困惑)

    我选中了那个框,因为我没有使用 Maven 进行构建,我使用的是 ANT,但它仍然要求我提供与 MVN 非常相似的必需属性,例如:组织 ID、项目 ID、项目名称、项目版本、源代码目录...等..

    所以我也填了那些。当我单击播放按钮“立即构建”时,构建似乎运行良好,就像安装 Sonar 之前一样,但它在最后失败了,因为它试图执行 MAVEN。

见下图:

$ mvn -f/root/.jenkins/jobs/HRDA/workspace/pom.xml -e -B sonar:sonarFATAL:命令执行失败java.io.IOException:无法运行程序“mvn”(在目录“/root/.jenkins/jobs/HRDA/workspace”中):java.io.IOException:error=2,没有这样的文件或目录

问题

  1. 为什么 Sonar 会尝试执行 Maven,如果我选中了“如果您使用 Maven 2,请选中此框”的复选框?

  2. 如果我的应用是使用 ANT、GANT、GRADLE 构建的,我可以使用这个 Sonar 插件吗?

  3. 我是否必须重新转换我的应用才能使用 MVN 构建?

谢谢,- 达里奥

最佳答案

就像 Oers 在我的问题评论中建议的那样,如果您在 CI 服务器(在我的例子中是 Jenkins)中使用 ANT 作为构建脚本,您将必须使用 SONAR-ANT-TASK 来生成 Sonar 报告,请执行以下操作:

  1. 下载 MySQL 或任何其他 Sonar 支持的 RDBMS,例如 Postgres、Oracle 等。'
  2. 下载并安装 Sonar 服务器。
  3. 转到( Sonar 安装文件夹)/extras/database/mysql 并运行 create_database.sql 脚本。
  4. 在我使用 mysql 的情况下,我不得不运行一个额外的 sql 语句,你可以在这里看到 Unable to access Sonar MySQL database Caused by: java.sql.SQLException: Access denied for user 'sonar'@'glassfishdev.ccs.local' (using password: YES)
  5. 输入 ./sonar.sh start 启动 Sonar
  6. 将 sonar ant 任务添加到您的构建脚本中。可以关注这个模板http://docs.codehaus.org/display/SONAR/Analyse+with+Ant+Task+1.0
  7. 如果安装了 Hudson Sonar 插件,请不要在配置屏幕中选中 Sonar 复选框,因为此插件仅适用于 Maven 项目。
  8. 单击“立即构建”按钮。如果以上一切都正确完成,您应该能够在 http://ipaddressofmachinesonarisinstalled:9000/ 看到报告。

希望对您有所帮助,-达里奥

关于ant - Sonar 插件不适用于使用 ANT 作为构建脚本的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7192765/

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