0

これがシナリオです
クラス B.java に依存するクラス A.java があるとします。

public Class A{
  public B b=new B();
}
public Class B{
  //Some business logic...
}

そして、クラス A のみを使用するアプリケーション X があります (X 内のどこかに がありますnew A())。1) A.class
を含む2つのjarとB.classを含む別のjarを作成し、これら2つのjarをアプリケーションに追加できますか?
2)A.classのみを含む1つのjarを作成して、そのjarをアプリケーションに追加し、実行時にB.classをアプリケーションに提供できますか(実行時にB.classを注入できると仮定します)
注:これら2つのクラスを追加する私が理解しているように、単一のjarではオプションではない

ので、クラスAはアプリケーションXのコンパイル時の依存関係であり、クラスBはランタイムの依存関係ですよね?

ポイント1と2で、「アプリケーションにjarを追加する」と言っているとき、正確に何をしているのか、アプリケーションXのビルドパスまたはクラスパスにそれらのjarを追加していますか? おそらく誰かがこれらの「パス」の違いを理解するのを手伝ってくれるでしょう。私はいつも混乱します。

4

1 に答える 1

0

基本的に、最初にプロジェクトのビルドパスでコンパイルしてから、実行時にクラスパスでそれらのクラスを再度提供する必要があります。クラスをまとめて別の jar に入れ、実行時にクラスパスで再結合することができます。

于 2013-10-15T16:46:32.540 に答える