Eclipseでカスタマイズされた Java コンパイル エラーを定義してトリガーしたいと考えています。基本的に、いくつかのメソッドのいくつかのシステムコールがコンパイルエラーを引き起こすことを望んでいます。
このディスカッションでは、Annotaionベースのソリューションが提案されていますが、コピー エラーがいつ発生するかを予測できないため、私の場合には適していません。私が望むのは、たとえば開発者がシステムコールを行うと、コンパイルエラーがトリガーされることだけです。
Eclipseでカスタマイズされた Java コンパイル エラーを定義してトリガーしたいと考えています。基本的に、いくつかのメソッドのいくつかのシステムコールがコンパイルエラーを引き起こすことを望んでいます。
このディスカッションでは、Annotaionベースのソリューションが提案されていますが、コピー エラーがいつ発生するかを予測できないため、私の場合には適していません。私が望むのは、たとえば開発者がシステムコールを行うと、コンパイルエラーがトリガーされることだけです。
探しているものとは正確には異なりますが、カスタムCheckstyle定義の使用を検討してください。System.out.println
への呼び出しを無効としてマークする checkstyle ドキュメントのサンプルを次に示します。
<module name="Regexp">
<!-- . matches any character, so we need to escape it and use \. to match dots. -->
<property name="format" value="System\.out\.println"/>
<property name="illegalPattern" value="true"/>
</module>
たとえば、開発者が java.lang.System を使用できないようにしたい場合、プロジェクトでカスタム クラスjava.lang.Systemを作成するのが良い方法です。 ) コンパイルの問題が発生します。
Maven を使用する場合は、別の Maven プロジェクトでクラスを作成し、実際のアプリケーションにパッケージ化されないようにスコープを指定することもできます。
そのようなことを達成する唯一の方法は、ビルド中にコードを分析する Eclipse 用のプラグインを作成することです。しかし、その詳細は実際には StackOverflow の質問の範囲外です。
Builder
実装を作成し、Java プロジェクトに登録する必要があります。
ここから始めることができます。