最終的に 3 つの主要なパッケージに要約される複雑な Java プロジェクトがあります。
com.myapp.client --> client-side classes
com.myapp.shared --> client- and server-side utility classes
com.myapp.server --> server-side classes
com.myapp.client
クラスの依存関係としてクラスが表示されないことをチェックする Ant タスクを書きたいと思いますcom.myapp.server
。この概念を「ドローブリッジ」と呼んでいます。これは、クライアント コードとサーバー コードの間にドローブリッジを設置しているためです。そのような違反する依存関係が見つかった場合、Ant タスクはビルドに失敗します。
私の人生では、これを行う方法がわかりません。できれば何かがすでに存在しているのが望ましいですが、Google は何も戻しませんでした。
既存のオープン ソース ソリューションを除いて、私の次の推測は、すべてのクライアント クラスをループして、サーバー クラスのインポートをチェックすることです。ただし、このSOの質問によれば、Javaコンパイラはコンパイル時にインポート参照を破棄します。
だから、私はここで途方に暮れています。何か案は?前もって感謝します!