2つのモジュールを含むプロジェクトがあります。私のJavaコードを含むJavaモジュール。私のKotlinコードを含むKotlinモジュール。 Kotlinモジュールはjavaモジュールに依存します。つまり、JavaモジュールにはKotlinモジュールを参照するものは何もありません。しかし、Kotlinモジュールは、JavaモジュールのJavaクラスに依存しています。Kotlin 1.0.5にアップグレードした後の奇妙な "未解決の参照:"エラー
このプロジェクト私は6ヶ月ほどオープンしていません。
以前はうまくいきました。それはkotlin 1.somethingだった。 6月の最新情報は何でも。
最新のKotlinバージョンに更新しました。
私のJavaモジュールのJavaクラスの1つは、Kotlinモジュールからもう参照できません。それはクラスのうちの1つだけです.KotlinモジュールはJavaモジュールから他の多くのクラスを参照しています。
私は誰かが何が起こっているか教えてくれることを願っています。この6ヶ月間にKotlinにいくつかの変更がありましたか?
私はJSBotを参照Kotlinモジュール内のすべてのKotlinファイルに取得するメッセージはこれです:
Error:(191, 39) Kotlin: Unresolved reference: JSBot
カラットファイルでJSBotインポートが正しいです。同じJavaパッケージ内のJavaモジュールの他のクラスも認識され、エラーなしでコンパイルされます。
public abstract class JSBot extends Evaluable implements Name {
...
}
その他の抽象JavaクラスはKotlinモジュールからいえ罰金参照されます
はここ(Javaモジュールで)JSBot.java宣言です。だから私は何が起こっているのか本当に理解できない。これはちょうどこの1つのJavaクラスです。
しかし、以前のKotlinバージョン(v1.0から6月に最新のものまで)では、それはうまくコンパイルされました。私はちょうど今このエラーを取得します。私はコードを変更していない。 Kotlinプラグインに更新されただけです。1.0.5
誰かに何かヒントを教えてもらえますか?私は立ち往生し、ここからどこに行くのか分からない。
1.0.0から1.0.5に私のmaven .pomを更新しましたが、それは役に立たなかった。
JSBotクラスには、コンストラクタパラメータに注釈付きの内部クラスがありますか? – yole
2つの内部クラス 'public final class Orders'があり、内部クラス' protected final class OpenOrders'を持っていますが、いずれもコンストラクタを持っていません。私は '@ Nullable'や' @ NotNull'アノテーションを使って、すべてのメソッドとコンストラクタ(コンストラクタがある場合)にアノテーションを付けます。そして、他の内部クラスは 'public order(@NotNull PlacedOrder placedOrder)'コンストラクタを含んでいる 'public abstract class Order'です - そうです、この2番目の内部クラスは、あなたのようにコンストラクタパラメータの注釈を持つ内部クラスです約 – ycomp
私はこの '@ NotNull'を削除しました。そして、それは' JSBot'の*未解決の参照*エラーなしで今コンパイルします。これは* fix *ですか?将来のkotlinのバージョンにはまだこの問題がありますか? – ycomp