web-dev-qa-db-ja.com

クラスパスエントリorg.Eclipse.m2e.MAVEN2_CLASSPATH_CONTAINERはエクスポートされません

私はEclipseでこの警告を受け取っています:

クラスパスエントリorg.Eclipse.m2e.MAVEN2_CLASSPATH_CONTAINERはエクスポートまたは公開されません。ランタイムClassNotFoundExceptionsが発生する可能性があります

検索後、エクスポートを修正する必要があることがわかりました。やったよ。

Eclipse Java Build Path properties

しかし、この警告は続きます!それを修正するために他に何ができますか?ありがとう。

62
user710818

私は両方のオプションを試しましたが、必要なのは後者だけです:

  • 関連付けられた生のクラスパスエントリを公開/エクスポートの依存関係としてマークする
  • 潜在的なパブリッシュ/エクスポート依存関係のセットから、関連する生のクラスパスエントリを除外します

依存関係をエクスポートする場合、Maven->プロジェクト構成の更新コンテキストメニューを使用してプロジェクト構成を更新すると、警告が返されます。この場合、.classpathファイルを手動で編集する必要があります。

<classpathentry kind="con" exported="true" path="org.maven.ide.Eclipse.MAVEN2_CLASSPATH_CONTAINER">
    <attributes>
        <attribute name="org.Eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
    </attributes>
</classpathentry>

単に属性exported="true"を削除し、プロジェクト構成を更新して確認します。

25
dcompiled

警告を右クリックし、quickfixを選択して、次のいずれかを選択できます。

  • 関連付けられた生のクラスパスエントリを公開/エクスポートの依存関係としてマークします。
  • 潜在的なパブリッシュ/エクスポート依存関係のセットから、関連する生のクラスパスエントリを除外します。

Eclipseでプロジェクトを公開/エクスポートすることはないため、除外しても安全です。しかし、どちらにしても違いはありません

段階的なスクリーンショット:
http://publib.boulder.ibm.com/infocenter/radhelp/v8/index.jsp?topic=/com.ibm.javaee.doc/topics/tlooseclasspath.html

36
Alin Stoian

同じ問題がありました。含めると消えます

<packaging>war</packaging> 

ポンポンで。パッケージはまったくありませんでした。

14
Frank Rünagel

http://geertschuring.wordpress.com/2009/03/05/why-the-maven2_classpath_container-will-not-be-exported-or-published/

特定の状況で、Eclipseは次の警告を表示します。

Classpath entry org.maven.ide.Eclipse.MAVEN2_CLASSPATH_CONTAINER will not be exported or published. Runtime ClassNotFoundExceptions may result.

これを解決するには、次を実行します。

Open the properties of the project that generates this warning
Click on “Java Build Path”
Click on the tab “Order and Export”
Enable “Maven Dependencies”
Click on “Ok”
Open the “Problems” view
Select the warning we are trying to solve, and press “Ctrl-1″
Click on “Ok”

これで問題は解決しました。プロジェクトが終了する前に再構築する必要があるため、警告が消えるまでしばらく時間がかかる場合があります。

9
gooooooogling

警告を右クリックして簡単な修正を行うだけです

enter image description here

その後、ソース管理から.classpathファイルの変更を確認できます。

enter image description here

5
Fangming

Eclipse Lunaのクイックフィックスで問題を解決できませんでした。 Project Facet "Dynamic Web _Module"を削除すると、問題はなくなりました。 Windowsの場合->環境設定->プロジェクトファセット。

enter image description here

追伸戦争としてのパッケージングも発行された問題を解決しましたが、JARであることが支持され、一部のプロジェクトが正常に機能し、一部のプロジェクトが正常に機能しなかった理由に戸惑いました。

ところで、警告は本物でした。これにより、サーバーでClassNotFoundExceptions例外が発生し、他のプロジェクトがこれを参照したときに使用できなくなりました。

4
borjab

現在受け入れられているものを含むほとんどの回答は、この問題に対する一時的な解決策を提供するだけです。Maven> Update Project…andオプションを選択するたびに、 pom.xmlからプロジェクト構成を更新してください」と警告が戻ってきました。

ただし、m2e-wtp - Maven Integration for WTP Eclipse 4.5(火星)でUpdate Projectを発行します...オプションを選択したまま、警告(および結果のエラー)はなくなりました。

1
Marcel Korpel

私の場合、どの回答も役に立たなかった。プロジェクトを更新するたびに、m2eは.classpathファイルからエントリを削除し、警告を無効にします。

バグレポートを提出しました: https://bugs.Eclipse.org/bugs/show_bug.cgi?id=537401

1
Aaron Digulla

この問題を解決する簡単な方法があります:

  1. Eclipseからプロジェクトを削除します。
  2. プロジェクトが配置されているワークスペースに。
  3. 次の画像で選択したアイテムを削除します。 srcpom.xmlを残すだけです。

    enter image description here

  4. Eclipseでプロジェクトを再インポートします。

1
Moco

Eclipse Photonを使用して、以下の構成で問題を修正しました:Window > Preferences > Maven > Java EE Integration > Enable Java EE Configuration

警告を受け取る前にこのオプションを無効にしたことに注意してくださいClasspath entry org.Eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER will not be exported

他のオプションは、必要ない場合はチェックされない場合があります。

Mavenの更新後、警告は再表示されません。

0
Remi Patriarche

私もこの問題に遭遇しました! Eclipseは同じデプスを2回追加すると信じています。に一度

Mavenの依存関係

グループおよび別の形式の

M2_REPO/...

の最後のものを削除する必要があります

プロパティ-> Java Buil Path-> Libraries

エラーが消える!

0
Biggg Jimmm

プロジェクトでJDKを更新した後も同じ問題が発生し、.classpathファイルを以前のものに置き換えることで解決しました。 .classpathファイルに次の変更があることに気付きました

    <attributes>
        <attribute name="maven.pomderived" value="true"/>
        <attribute name="org.Eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
    </attributes>

上記のコードの2行目がありませんでした

<classpathentry kind="con" path="org.Eclipse.jdt.launching.JRE_CONTAINER"/>

この行がありませんでした

    <classpathentry kind="con" path="org.Eclipse.jdt.launching.JRE_CONTAINER/org.Eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
    <attributes>
        <attribute name="owner.project.facets" value="Java"/>
    </attributes>
</classpathentry>

これらの行が追加されたため、手動で削除しましたが、すべて正常に機能しました。

0
Gaurav Matta

Pom.xmlへの追加:

<properties>
    <Java.version>1.8</Java.version>
</properties>

この場合や、Dynamic Web Moduleやその他の問題についても助けてくれました。

0
janap