ファイル: A.java
class A
{
B b;
public A() {
b = new B();
}
}
ファイル: B.java
class B
{
public B() {}
public foo(A a) {...}
}
上記のコードは、コンパイルする前に A が B を必要とし、コンパイルする前に B が A を必要とするため、コンパイルできません。どちらも他方より前にコンパイルされません。それで?
この例は簡単です。foo(A a) {...} を削除することで、B.java がコンパイルされます。次に、A.java をコンパイルします。B.java を復元してコンパイルします。しかし、ソースから RXTX をビルドしようとしていますが、その依存関係はねじれた小さなフレーズの迷路です。
私は非ワーキング クラス コードにコンパイルできることを望んでいました。次に、定義されたすべてのクラスとメソッドを使用して、動作するコードに再度コンパイルします。
魔法の弾丸はありますか?