2
import org.sonar.api.component.ResourcePerspectives;
public class MySensor extends Sensor {
private final ResourcePerspectives perspectives;
public MySensor(ResourcePerspectives p) {
this.perspectives = p;
}
public void analyse(Project project, SensorContext context) {
Resource myResource; // to be set
Issuable issuable = perspectives.as(Issuable.class, myResource);
if (issuable != null) {
// can be used
Issue issue = issuable.newIssueBuilder()
//repository : pmd, key : AvoidArrayLoops
.setRuleKey(RuleKey.of("pmd", "AvoidArrayLoops"))
.setLine(10)
.build();
//works
issuable.addIssue(issue);
Issue issue2 = issuable.newIssueBuilder()
//repository : manual, key : performance
.setRuleKey(RuleKey.of("manual", "performance"))
.setLine(10)
.build();
// doesn't work
issuable.addIssue(issue2);
}
}
}
當我嘗試添加引用pmd規則AvoidArrayLoops的問題「問題」時,它起作用。更一般地說,當我嘗試添加引用pmd或checkstyle規則的問題時,它就起作用了。插件用於將涉及手動規則的問題添加到聲納中
但是,當我嘗試添加引用諸如問題「issue2」等手動規則的問題時,它不起作用。我手動創建了規則「性能」,因此規則性能存在於聲納中的手動規則列表中。
我想知道是否不可能添加引用手動規則的問題,或者如果我沒有爲方法RuleKey.of使用正確的參數。
感謝爲什麼聲納不顯示自定義的問題可能是你沒有啓用它的規則