Classpath entry org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER is marked for publish/export but is not exported on the project classpath

Jerseyのプロジェクトで、別プロジェクトにModelクラスなどを配置している。
デプロイメント・アセンブリーでModelプロジェクトを参照するように設定しているんだけど、
以下のような警告が表示されていた。

Classpath entry org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER is marked for publish/export but is not exported on the project classpath. Classpath visibility within Eclipse and at runtime will differ.

とりあえずデバッグ実行しても問題なく動いているんだけど、キモチワルイので除去するために調査。

結論からいうと、下記「参考」リンクの 1 や 2 の対応でOKだった。

  • 該当プロジェクトのプロパティを表示
  • 「Java のビルド・パス」 -> 「順序およびエクスポート」
  • 「Maven 依存関係」にチェック
  • 「OK」をクリック

つまり、Mavenでインストールしたモジュールが他プロジェクトから見えねーよ!って警告だったんですね。

参考

  1. Why the “MAVEN2_CLASSPATH_CONTAINER will not be exported or published” | Geert Schuring
  2. java ee - Eclipse build path warning - Stack Overflow
  3. JavaEE 7をやってみよう。 Webデプロイメントアセンブリー - ひこぽんのーと
  4. “クラスパス・エントリーはエクスポートまたは公開されません”警告を解消する - R42日記

コメント

このブログの人気の投稿

[Java] WebDAVからファイルをダウンロード

蛍光灯フリッカー現象 (ちらつき) の対策