由于这条规则对我不起作用,我已经创建了简单的测试"项目"结构:
/myTestProject
/src
/a
/A.java
/b
/B.java
.java文件的内容:
A.java
package a;
public class A {
public A() {
}
public void someOther() {
halo();
}
/**
* @deprecated
*/
@Deprecated
public void halo() {
int i = 0;
}
}
B.java
package b;
import a.A;
public class B {
public B() {
}
public void halo() {
A a = new A();
a.halo();
}
}
我已启用避免在默认质量配置文件中使用已弃用的方法。 (鱿鱼中的Key CallToDeprecatedMethod)
我运行了SonarRunner但是我在这段代码中没有任何问题。
我忘记了什么?
编辑: 我的环境SonarQube 4.1和Sonar Runner 2.3
答案 0 :(得分:0)
我在以下主题中找到了答案:http://sonarqube.15.x6.nabble.com/sonar-dev-sonar-squid-needs-class-file-td5019909.html#a5019937
正如本主题的标题所说:“声纳鱿鱼需要类文件”
在本主题中,我们可以读到我们项目中的文件* .class是必需的。
我还没有构建我的项目。所以没有任何* .class文件。
在规则说明或其他地方没有明确说明需要* .class文件。