123

重複の可能性:
コンパイルと実行時の依存関係を理解する

「ランタイム」スコープの依存関係は、コンパイル時ではなく実行時に利用できることを理解しています。しかし、なぜあなたがそれを望むのか理解できません! 代わりに単に「コンパイル」スコープを使用しないのはなぜですか?

ドキュメントは本当に役に立ちません。何か案が?

4

1 に答える 1

155

runtime は、単体テストと実行時に必要な依存関係に役立ちますが、コンパイル時には役立ちません。これは通常、プログラム コードで直接参照されない、JDBC ドライバーなどの動的に読み込まれるコードである可能性があります。

依存関係をランタイムに設定すると、コードへの偶発的な依存関係がなくなり、依存関係が推移的にならないようになります。たとえば、モジュール A がライブラリ X にランタイム依存関係があり、モジュール B がモジュール A に依存している場合、ライブラリ X への依存関係は継承されませ。「provided」または「compile」を使用する、B は X に依存します。 .

于 2012-09-05T02:02:11.763 に答える