web-dev-qa-db-ja.com

IntelliJで注釈処理を構成する方法IDEA 14現在のプロジェクト作業用?

プロジェクトの構造は次のとおりです。

  • 親プロジェクト
    • プロジェクト(Spring)は、pom.xmlでプロジェクトBの依存関係を持っています
    • Bプロジェクト(Spring MVC)は、pom.xmlでプロジェクトAの依存関係を持っています

Tomcat 7でプロジェクトBを起動すると、エラーが発生します。

エラー:Java:アノテーション処理はモジュールサイクルではサポートされていません。サイクル[A、B]のすべてのモジュールがアノテーション処理から除外されていることを確認してください

この問題を回避する方法は?

Java 8、Tomcat 7およびidea 14を使用します。

42
Mikhail

この種の問題を解決するには、InteliJ-ideaでAnalyze Module依存関係を使用する必要があります。

[ファイル]メニュー> [分析]> [モジュールの依存関係]

これは、循環依存関係があり、最初に解決する必要があるすべてのプロジェクトのリストを表示します。

この機能は、問題を見つけるのに役立ちます。

[〜#〜] edit [〜#〜]最新バージョンでは、Analyze-> Analyze Module Dependencies ..

49
Mikhail

ミハイルの答えに加えて、ここにそれを修正する方法

どのモジュールに循環依存関係があるかを確認したら、プロジェクトを右クリックして、

Open Module Settings->該当するモジュールグループを展開し、モジュールを選択します-> Dependencies->選択して削除します

7
codepleb

それが実際のソリューションであるかどうかはわかりませんが、マルチモジュールMavenプロジェクトをIdea 14に移行する際に同様の問題がありました。

  • junit 1.2.16

モジュールA

  • junit 1.2.17

モジュールB

  • junit 1.2.16
  • モジュールA

モジュールAから単体テストを実行しようとしたときに実行に失敗しました。モジュールからjunitを完全に削除すると解決しました。理由はわかりませんが、似たような設定をしているのでしょうか?

3
DoNuT

この問題を解決するための代替案は、私にとっては有効でした(上記の答えはそうではありませんでした)。

pom.xmlあなたが持っているパッケージ/プロジェクトから。 削除問題の原因となっているタグ。コンソールで問題の依存関係を見つけることができます。

それが役に立てば幸い。 :)

0
SimtiMan