問題タブ [checkstyle]
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.
checkstyle - checkstyleでのJavadocPackageの使用
checkstyleバージョン4.0の構成をバージョン5.0に変換中です。したがって、古い「PackageHtml」を置き換えるために以下を追加しました。
<module name="JavadocPackage">
<metadata name="com.atlassw.tools.eclipse.checkstyle.lastEnabledSeverity" value="info"/>
<property name="allowLegacy" value="true"/>
<property name="severity" value="info"/>
</module>
何が起こるかというと、Javaファイルの上に次のコメントがありますが、「Missingpackage-info.java」という情報メッセージが表示されます。
/*
* File: Test.java
* System: PF Tools
* Module: com.research.usage
* Author: jadaaih
* Copyright: Jadaaih
* Last modified by: jadaaih
* Date: 2009-03-02 15:30:24
* Version: 1.1
* Description:
* Preconditions:
*/
表示が歪んで申し訳ありません。コメントの最後に改行があります。
4.0に準拠したCheckstyle5.0でそのcheckstyle情報メッセージを削除する方法についてアドバイスしてください。
version-control - Checkstyle ソース管理統合
私は最近、標準のコーディング規約に関する調査の一環として、checkstyle を調べています。まったく新しいプロジェクトには完全に適しているように見えますが、新しいコードまたは編集されたコードのみをチェックする方法を提供していないように見えるため、既存のプロジェクトに採用するには大きな障壁があるようです. たぶん私は間違っています?
コーディング標準が一度もなかったコードベースがある場合、コードベース全体を一度に標準にインライン化するのは大変な作業になる可能性があります。コードが自然に進化するにつれて、時間をかけて段階的に実行できるようにすることは、より合理的なアプローチのように思えます。しかし、checkstyle の可能性はないようです。
これを可能にするには、ソース管理システムと連携する必要があると思います。それは Checkstyle で可能ですか、またはこの機能を提供できる別のツールはありますか?
eclipse - checkstyle.xml から Eclipse コード スタイル フォーマット/プロファイルに変換し、またその逆に変換するにはどうすればよいですか?
Eclipse コード フォーマッターとプロファイル xml ドキュメントがあり、maven ビルドで使用してレポートを実行し、Eclipse ファイルを生成できる checkstyle.xml を作成したいと考えています。 maven-eclipse-pluginは checkstyle.xml から eclipse ファイルを生成できるように見えますが (私はそう思います)、どうすればよいかわかりませんし、手動で行うのも楽しみではありません。
checkstyle -> eclipse から Maven 経由でデータが流れる場合、逆方向に流れるはずです。
2つのEclipseファイルからcheckstyle.xmlを生成する方法を知っている人はいますか?
deprecated - 非推奨のメソッドとクラスのCheckStyleの苦情を無効にできますか?
一部のパブリック静的フィールドを廃止したAPIを維持しています。
CheckStyleはこれらについて大声で不平を言いますが、フィールドを非推奨としてマークすることで問題に対処したので、完全に無視してもらいたいと思います。
具体的には、ライブラリには列挙用の定数(public static final)がありますが、それらはfinalとしてマークされていません。CheckStyleはそれらについて文句を言いますが、契約を破らずにそれらをfinalに変更することはできません。
私の計画は、それらを非推奨としてマークし、後で削除することです。ただし、それらを非推奨としてマークしても、CheckStyleレポートから削除されるわけではありません。
java - コードをクリーンアップすると、バイナリ互換性が失われます
私は、知らない多くの人々によって使用されているプロジェクトに取り組んでいます。私たちは CheckStyle の警告を下げるというかなり良い仕事をしており、バイナリ互換性を壊すことなく得ることができるほど低いものです.
残りの警告の大部分は、定数 (public static final) に final キーワードがないことが原因です。定数の命名は、開発者がそれらを読み取り専用にすることを意図していたことを明らかにしていますが、それらには final が定義されていませんでした。
開発者がこの見落としを利用したかなりひどいコードを書いていない限り、それらを追加してもコードが壊れることはありません。
現在のバージョン番号は 1.2.1 です。変更を適用して 2.0 に移行しますか、それとも適用して 1.3 としてロールアウトしますか。完全な 2.0 を必要とするのはかなり小さな変更のようです。
私は何をすべきか?
java - CheckstyleのRequireThisチェックを有効にする必要がありますか?
組み込みのCheckstyleチェックの1つはRequireThisですthis.
。これは、ローカルフィールドまたはメソッドの呼び出しの前に追加しない場合は常にオフになります。例えば、
このチェックが正当化されるかどうかに苦労しています。上記の例では、ExampleClass
はfinalであり、「正しい」バージョンが呼び出されることを保証する必要があります。getMeSomething
さらに、サブクラスでデフォルトの動作をオーバーライドしたい場合があるようです。その場合、「this」を要求するのは間違った動作です。
最後に、ソースを乱雑にし、実際に何が起こっているのかを確認するのをより困難にする、過度に防御的なコーディング動作のようです。
ですから、これを有効にするのは悪いチェックだとアーキテクトに提案する前に、他の誰かがこのチェックを有効にしたかどうか疑問に思っていますか?行方不明の結果として重大なバグを見つけましたthis
か?
java - ソース コード内の特定の警告を無視するように Checkstyle を強制する方法はありますか?
PMD には、//NOPMD
Java ソース ファイル内のコメントで特定の警告を無視する方法があります。
Checkstyle には同様のオプションがありますか?
regex - Checkstyle 4.4 RegExp チェックでの StackOverflowError
こんにちは、
バックグラウンド:
私は Checkstyle 4.4.2 と RegExp チェッカー モジュールを使用して、Java ソース ヘッダーのファイル名が、それらが存在するクラスまたはインターフェイスのファイル名と一致しないことを検出しています。これは、開発者があるクラスから別のクラスにヘッダーをコピーし、「File:」タグを変更しない場合に発生する可能性があります。
RexExp チェッカーでの正規表現の使用は、多くの具体化を経ており、(現時点ではやり過ぎかもしれませんが) 次のようになります。
私がチェックしているファイルの基本的な形式は(非常に単純化されていますが)、次のようになります
問題:
一致が見つからない場合(つまり、「File: Bar.java」を含むヘッダーがファイル Bat.java にコピーされた場合)、非常に長いファイルで StackOverflowError を受け取ります (私のテストケースは @1300 行です)。
私はいくつかの視覚的な正規表現テスターで実験しましたが、正規表現エンジンがクラスまたはインターフェース名を含む行を通過すると、一致しない場合に、次の行で再び検索を開始し、おそらく StackOverflowError を引き起こすバックトラッキングを行うことがわかります。
質問:
正規表現を変更して StackOverflowError を防ぐ方法
一致しない場合 (つまり、 "File: Bar.java" を含むヘッダーがファイル Bat.java にコピーされた場合) を含む行を調べると、一致が停止するように正規表現を変更する方法はありますか?インターフェイスまたはクラス名を調べて、「\1」が最初のグループと一致しないことを確認します。
あるいは、それが可能な場合、インターフェイスまたはクラスを含む行を調べた後に行われる検索とマッチングを最小限に抑えて、処理と (できれば) StackOverflow エラーを最小限に抑えることは可能ですか?
java - java-maven ビルドのすべてのソース ファイルに著作権表示を確実に添付するにはどうすればよいですか?
Java/Maven ビルドに著作権表示を含めることを強制する標準的な方法はありますか? 製品自体はコピーで書かれており、誰かが私のソースを持っている場合、私はもっと大きな問題を抱えているので、それは必要ではないことを認識しています. .
著作権のチェックを処理するツールはありますか?
javascript - JSLint を超えた JavaScript コードチェック
Checkstyle for JavaScript のように機能するものを探しています。私は JSLint について知っており、すでに Google の Closure コンパイラを使用していますが、これらは主に構文の問題をチェックします。Checkstyle は、間違った行のブレースをチェックできますが、HashMap を使用しないなどのカスタム チェックを作成することもできます。
今後の JavaScript プロジェクトでそのようなものを探しています。何か案は?