我想在我的IDE(Eclipse)中使用与Sonar配置文件相同的Ruleset.
我从Sonar Permalinks获得了PMD XML规则集,并希望将其导入我的PMD Eclipse插件,但是当我尝试这样做时,"确定"按钮被取消激活...

有人能帮我吗 ?
我有以下结构
public class parent {
int value ;
}
public class child extends parent {
int childValue;
public child(){}
public child (int value){
this.childValue = value ; // this line cause ConstructorCallsOverridableMethod warning during object construction
}
}
Run Code Online (Sandbox Code Playgroud)
你能建议如何解决这个错误吗?
是否有任何Checkstyle,PMD或Findbugs规则可以找到以下非线程安全弹簧单例实现?
private String helperVar;
public String getValue(String value) {
helperVar = value;
return convertValue();
}
private String convertValue() {
return helperVar.trim();
}
Run Code Online (Sandbox Code Playgroud)
我知道这个样本很糟糕,但这是展示我的意思的最简单方法.
当在一次执行中从bean执行getValue方法时,它可以正常工作.但是当在多用户环境中执行它时,将导致不可预测的错误/行为.
有没有办法找到这些出现而无需手动完成代码?是否有任何静态代码检查器可以自动检查这个及其每个变化?
当我运行pmd分析时,我发现了违规行为:
Each class should declare at least one constructor
Run Code Online (Sandbox Code Playgroud)
此违规是在Spring控制器上.这个控制器是由Spring实例化的,所以不应该调用这个类.
建议忽略此违规的方法是什么?
根据http://pmd.sourceforge.net/pmd-4.3/suppressing.html可以使用// NOPMD,但我只是想忽略特定的违规行为.
我有
if (localName.equals("TaxName")) {
Run Code Online (Sandbox Code Playgroud)
但是PMD说
Position literals first in String comparisons
Run Code Online (Sandbox Code Playgroud) 我想为所有自动装箱和拆箱产生警告.
有没有人找到有效的方法?
Eclipse捕获基本的自动装箱错误:例如.Integer i = null; i++.但是在任何复杂的事情上失败,并不是我真正想要的.
我看过PMD和Checkstyle,但在那里找不到任何东西.
我知道这是一个有争议的话题,但我认为这是一个危险的特征.没有办法禁用它,所以我至少想在代码审查期间检查报告.
我NullPointerException在代码审查和错误中经常看到这一点:
class X {
Integer i = null;
public int doSomething() {
return i + 2;
}
}
Run Code Online (Sandbox Code Playgroud)
我想阻止它走得那么远.
我已经在我的Windows 7开发者PC上设置了Jenkins服务,以便为我们为什么要在公司中使用Jenkins而不是Bamboo提供合理的论据.
我安装了"Analysis Collector Plugin":https://wiki.jenkins-ci.org/display/JENKINS/Analysis+Collector+Plugin,但Jenkins忽略了我对趋势图的配置:

保存配置后,它仍然显示默认设置的默认图表:

我知道图形设置存储为cookie,这就是为什么我使用URL http://127.0.0.1:8080代替http://localhost:8080,但我仍然无法显示正确的图形.
詹金斯v1.538
静态分析收集器插件v1.38
我有一个枚举类,其中包含Java中的内部类.
例如(在实际代码中,在内部使用内部类的枚举上声明了一些方法):
public enum MyEnum{
VALUE_1,
VALUE_2;
private static class MyInnerClass // is static here needed or can it be removed?
{
}
}
Run Code Online (Sandbox Code Playgroud)
PMD告诉我不需要'static'修饰符(违反UnusedModifier规则).这是正确的还是PMD错误?
注意:这个问题不重复,这与我在这里要求的相反.
也许只是我,但我找不到PMD中最高优先级的信息:1还是5?
由于http://pmd.sourceforge.net/running.html和命令行参数的提及,-minimumpriority我认为5是最高值,1是最低值.我对吗?
PMD警告我要避免布尔实例化(出于效率原因).我有类似的东西
Boolean variable = new Boolean(somestringIGotRepresentingABoolean);
Run Code Online (Sandbox Code Playgroud)
我应该用这个
Boolean variable = Boolean.valueOf(somestringIGotRepresentingABoolean);
Run Code Online (Sandbox Code Playgroud)
为什么那更好?
pmd ×10
java ×7
checkstyle ×3
findbugs ×2
spring ×2
autoboxing ×1
eclipse ×1
enums ×1
import ×1
jenkins ×1
performance ×1
rules ×1
sonarqube ×1