問題タブ [pmd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
283 参照

code-analysis - 新しい言語を完全にサポートするようにPMDをカスタマイズできますか?

妥当な時間内に、新しい言語を完全にサポートするようにPMDをカスタマイズできますか。技術的にはほとんど何でもできることを知っていますが、これが妥当な時間でできるかどうか疑問に思っていますか?例<2週間

このページでは、CPDパーサーの作成方法について説明していますhttp://pmd.sourceforge.net/cpd-parser-howto.html

しかし、これはコピー/貼り付けの検出のためだけですか?CPDパーサーを作成することで、Rileセットに関してPMDを完全にサポートできますか?

0 投票する
2 に答える
5373 参照

maven-2 - ビルド目標内に maven pmd プラグインの実行を含めることはできますか?

みんな、プロジェクトのビルド中にpmdレポートを生成したかったので、pom.xmlのビルドセクションにプラグインを追加しましたが、mvn clean install pmd:pmdを明示的に呼び出すまで実行されません。mvn clean install 自体で実行したいです。出来ますか ?私のpomエントリは次のとおりです。

前もって感謝します。

0 投票する
1 に答える
4008 参照

ant - Ant内でカスタムPMDルールセットファイルを使用する

ビルドにカスタムPMDルールセットファイルを使用したいのですが。基本的に、いくつかのルールをオフにして、組み込みのルールセットパッケージの多くを使用したいと思います。

たとえば、文字列と基本ルールのみが必要だとすると、次のルールセットファイルがありますruleset.xml

次に、次のように、そのファイルへの参照をAntタスクに含めます。

これは、次の例外で失敗します。

ビルドに失敗しましたE:\ build.xml:120:java.lang.RuntimeException:そのクラスが見つかりませんでしたリソースrulesets/basics.xmlが見つかりません。リソースが有効なファイルまたはURLであるか、net.sourceforge.pmd.RuleSetFactory.parseRuleSetNode(RuleSetFactory.java:229)のCLASSPATH(net.sourceforge.pmd.RuleSetFactory.createSingleRuleSet(RuleSetFactory.java:135))にあることを確認してください。 net.sourceforge.pmd.RuleSetFactory.createRuleSets(RuleSetFactory.java:85)..。

基本的に、ルールセットxmlファイルはタスクのクラスパスを壊します。クラスパス要素をpmdタスクに追加しようとしましたが、機能しません。

カスタムルールセットファイルを機能させるには、何を追加する必要がありますか?ルールセットファイルではなく、antファイルに何かを追加したいと思います。

0 投票する
5 に答える
13433 参照

java - 文字列比較におけるリテラルの正しい位置は何ですか?

私は持っています

しかしPMDは言う

0 投票する
2 に答える
495 参照

pmd - BigDecimal での equals() の使用について警告する PMD xpath ルール

equals()のメソッドを呼び出すjava.math.BigDecimalと値とスケールの両方がチェックされることを警告する PMD xpath ルールを誰かが提案できますか。1.0と等しくないので1.00、 を使用する必要がありますcompareTo

0 投票する
3 に答える
9061 参照

java - PMD の ArrayIsStoredDirectly ルールの背後にある理由

PMD には、Sun Security ルールセットに ArrayIsStoredDirectly というルールがあります。

配列を受け取るコンストラクターとメソッドは、オブジェクトを複製してコピーを保存する必要があります。これにより、ユーザーによる将来の変更が内部機能に影響することを防ぎます。

これが彼らの例です:

このルールの背後にある理由を完全に理解しているとは思いません。渡された配列の値を別の場所で変更できるからですか? これに関して、コレクションを渡すことと配列を渡すことの間に違いはありますか?

0 投票する
1 に答える
789 参照

netbeans - NetbeansでのPMDと自動生成されたコード

Netbeansを使用してGUIアプリケーションを構築していますが、PMDは自動生成されたコードの内容について「文句を言います」。自動生成されたコードを無視するようにPMDを構成できますか(Checkstyleで行ったように)?

ありがとうございました。

0 投票する
1 に答える
999 参照

java - PMD を使用したカスタム ルール - 実行時に値をルールに渡す

私の要件は、Java ファイルを解析し、特定のインターフェイスを実装するクラスまたはインターフェイスを見つけることです。したがって、PMD でカスタム ルールを実装することから始めました。クラスとインターフェースを検索する XPath 式を作成できましたが、検索対象のインターフェース名を XPath ルールに渡す正しい方法を見つけることができませんでした。1 つの方法は、プロパティを定義し、PMD を呼び出す前に xml ファイルを更新することでした。

上記のアプローチの問題は、xml が共有されるため、PMD をスレッドで呼び出すことができないことです。

実行時に値がルールに渡される PMD でこのような問題に直面した人はいますか?

0 投票する
2 に答える
919 参照

checkstyle - ソナーでソースコードを分析する

ソース コードを svn リポジトリから直接取得し、ソナーで分析することは可能ですか? または、特定のソースに対して Checkstyle または pmd プラグインを実行するためだけにソナーを構成しますか? 非Mavenプロジェクトでこれを行う必要があります。

0 投票する
1 に答える
5339 参照

java - Eclipsepmdプラグインに新しいJavaベースのPMDルールを追加する

Eclipse pmdプラグインに新しいJavaベースのpmdルールを追加するにはどうすればよいですか?

次のエラーが発生します:

無効なクラスの実装。クラスはプラグインのクラスパスにあり、ルールインターフェイスを実装する必要があります。

AbstractRuleクラスでルールクラスを拡張しました。