Netbeansのjavaフォルダー間の依存関係をどのように強制しますか?
-
05-07-2019 - |
質問
Netbeansは初めてです。 netbeansでのプロジェクトのセットアップを誰かが手伝ってくれるかどうか疑問に思っています。 50万行のJavaコードを別のIDEからNetbeansに移動しています。コードをビルドして、Netbeansで簡単に実行できました。私はそれらのフォルダー間の依存関係を持つ多くのフォルダーを持つプロジェクトを持っています。特定の順序で構築する必要があります。これは、下位層のモジュールが上位層を呼び出せないように階層化を実施するためです。 Netbeansで設定できませんでした。以下は私のプロジェクトがどのように見えるかです
project/ libA/ libB/ libC/ libD/ libE/ appA/ ...
すべてのライブラリとappAをビルドするプロジェクトが1つあります。プロジェクトビルドxmlは、project /フォルダーに保存されます。しかし、ライブラリには依存関係があります。 libBはlibAの後に構築する必要があります。 libAの後のlibC。 libEはlibDやlibBなどに依存します。
プロジェクトプロパティでライブラリのソースフォルダーの順序を変更しようとしました。それは何の違いももたらさないようでした。 libAをlibBの後に移動しても、すべてがうまく構築されていました。 libAがまだビルドされていないため、失敗すると予想していました。
迷っています。この種の依存関係を強制するための秘whatは何なのか疑問に思っています。 「既存のソースを使用したJavaプロジェクト」を使用してプロジェクトを作成しました。ウィザード。
ご協力ありがとうございます
ありがとう
ビデオ男。
解決
それは苦痛になりますが、独自のantビルドスクリプトを記述し、Netbeansにそれを使用させることができます。
基本的に:
- カスタムantビルドファイルを作成する
- Antプラグインをインストールします
- Antビルドファイルを作成
- ビルドファイルを右クリック
- 選択したターゲットを実行します。
これにより、必要なことをすべて実行できますが、Netbeansが正しい順序を見つけている場合は、なぜそれを使用しないのですか?
Netbeansでコンパイルして実行しただけで何かが壊れますか?
他のヒント
まあ!チームメンバーが、上位層のコードを呼び出す下位レベルパッケージにコードを追加したとします。レイヤーを壊すため、失敗するはずです。 Netbeansは1回のjavac呼び出しですべてのファイルをコンパイルするように見えるため、ビルドは問題なくコンパイルされます。この場合、Netbeansがビルドを壊してほしい。 独自のantスクリプトを作成することも、強制する別の方法です。 IDEを使用する際の重要なポイントは、独自のmakeファイル(またはantスクリプト)を作成しないようにすることです。これは、IDEが最初から10年を達成できたことです。ここに何か足りないのではないかと思っています。
ありがとう
Video Guy