我有一个使用Sonarqube插件(org.sonarqube)的gradle脚本。如果我让发布任务依赖它,它就可以正常工作。
问题是只有在条件为真时运行sonarqube。所以我尝试了(如gradle文档中所述)所有这三个语句:
sonarqube.enabled (false)
sonarqube.enabled=false
sonarqube.onlyIf { false }
每个都会导致错误,这是我尝试第一个语句的错误
FAILURE: Build failed with an exception.
* Where:
Build file 'D:\Eclipse\workspace3.6\at.mic.hermes\build.gradle' line: 208
* What went wrong:
A problem occurred evaluating root project 'at.mic.hermes'.
> Could not find method enabled() for arguments [false] on org.sonarqube.gradle.SonarQubeExtension_Decorated@412196.
为了确保代码中没有拼写错误,我尝试了所有使用测试任务的语句,例如
test.enabled(false)
和
中的结果(如已经过):test SKIPPED
任何想法我做错了什么/必须改变什么? Thx提前!
谢
答案 0 :(得分:0)
我认为问题来自名称冲突。有两个名为'sonarqube'的对象:
似乎没有破坏你的构建,但是当你写sonarqube.enabled
时,它会访问扩展名(根据你的堆栈跟踪)。
解决方案可能是使用tasks.sonarqube.enabled
消除歧义。见https://docs.gradle.org/current/userguide/more_about_tasks.html#N11143