code

클래스 경로 항목 org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER은 내보내지지 않습니다.

codestyles 2020. 11. 28. 09:31
반응형

클래스 경로 항목 org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER은 내보내지지 않습니다.


Eclipse에서 다음과 같은 경고가 표시됩니다.

클래스 경로 항목 org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER은 내보내거나 게시되지 않습니다. 런타임 ClassNotFoundExceptions가 발생할 수 있습니다.

검색 후 수정 내보내기가 필요하다는 것을 알았습니다. 내가 해냈어.

Eclipse Java 빌드 경로 특성

그러나이 경고는 계속됩니다! 이 문제를 해결하기 위해 무엇을 할 수 있습니까? 감사.


두 가지 옵션을 모두 시도했지만 후자 만 필요한 것입니다.

  • 연관된 원시 클래스 경로 항목을 게시 / 내보내기 종속성으로 표시
  • 잠재적 게시 / 내보내기 종속성 집합에서 연관된 원시 클래스 경로 항목을 제외합니다.

종속성을 내보내는 경우 Maven-> Update Project Configuration 컨텍스트 메뉴 를 통해 프로젝트 구성을 새로 고치면 경고가 반환됩니다. 이 경우 .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"하고 프로젝트 구성을 새로 고쳐 확인하십시오.


경고를 마우스 오른쪽 버튼으로 클릭하고 quickfix를 선택한 후 다음 중 하나를 선택할 수 있습니다.

  • 연관된 원시 클래스 경로 항목을 게시 / 내보내기 종속성으로 표시합니다.
  • 잠재적 게시 / 내보내기 종속성 집합에서 연관된 원시 클래스 경로 항목을 제외합니다.

프로젝트를 게시 / 내보내는 Eclipse가 없기 때문에 제외하는 것이 안전합니다. 하지만 어느 쪽이든 차이가 없습니다

단계별 스크린 샷 :
http://publib.boulder.ibm.com/infocenter/radhelp/v8/index.jsp?topic=/com.ibm.javaee.doc/topics/tlooseclasspath.html


나는 같은 문제가 있었다. 포함 후 사라집니다.

<packaging>war</packaging> 

pom. 포장이 전혀 없었습니다.


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”

이제 문제가 해결되었습니다. 프로젝트가 사라지기 전에 다시 빌드해야하기 때문에 경고가 사라지기까지 시간이 걸릴 수 있습니다.


경고를 마우스 오른쪽 버튼으로 클릭하고 빠른 수정을 수행하십시오.

여기에 이미지 설명 입력

그런 다음 소스 제어에서 .classpath 파일 변경 사항을 검토 할 수 있습니다.

여기에 이미지 설명 입력


I wasn't able to solve the problem with the quickfix in Eclipse Luna. The problem disappeared after removing the Project Facet "Dynamic Web _Module". In Windows -> Preferences -> Project Facets.

여기에 이미지 설명 입력

P.S. Packaging as War also solved the issued but it was suppoused to be a JAR and I was puzzled why some projects worked ok and some didn't.

And by the way, the warning was real. It caused a ClassNotFoundExceptions exceptions in the server that made it unsusable when other projects referenced this.


Most answers, including the currently accepted one, only provide a temporary solution to this issue: every time I chose Maven > Update Project… and leaving the option 'Update project configuration from pom.xml' on, the warning came back.

However, after installing m2e-wtp - Maven Integration for WTP in Eclipse 4.5 (Mars) and issuing Update Project… again, while leaving the option selected, the warning (and resulting error) went away.


I have a simple way to solve this problem:

  1. Delete the project from your Eclipse.
  2. Into the work space where the project is located.
  3. Delete the items selected in the following image. Just leave src and pom.xml.

    여기에 이미지 설명 입력

  4. Re-import the project in your Eclipse.


None of the answers helped in my case. Every time I update the project, m2e will delete the entry from the .classpath file which disables the warnings.

I've now filed a bug report: https://bugs.eclipse.org/bugs/show_bug.cgi?id=537401


Adding to the pom.xml:

<properties>
    <java.version>1.8</java.version>
</properties>

helped me in this case and also with Dynamic Web Module and other issues.


I came across this issue too! I Believe that eclipse adds the same deps twice. once in the

Maven Dependencies

Group and another in the form of

M2_REPO/ ...

You must remove the last one in the

Properties -> Java Buil Path -> Libraries

for the error to dissapear!


Using Eclipse Photon, the configuration below fixed the problem for me: Window > Preferences > Maven > Java EE Integration > Enable Java EE Configuration

Note that I disabled this option before receiving the warning Classpath entry org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER will not be exported

All other options may not be checked if you do not need them.

The warning does not reappear after a Maven update.


I had the same issue after updating my JDK in project and resolved it by replacing my .classpath file with previous one. I noticed the following changes in my .classpath file

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

The second line was missing from above code

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

This line was missing

    <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>

These lines were added so I manually removed them and it all worked again.


Window, Preferences, Validation, Classpath Dependency Validator, Uncheck manual and build

대부분의 이클립스 유효성 검사와 마찬가지로 이것은 깨졌습니다.


이것이 Eclipse에서 구성된 Maven 프로젝트의 구성이 변경되거나 부적절하게 저장된 일반적인 문제입니다.

일반적으로 .classpath 파일을 편집하고 빌드 경로 등에 대한 참조를 확인합니다.

따라서 귀하의 경우에는 org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER 참조가 포함 된 classpathentry를 삭제해야한다고 생각합니다.

참고 URL : https://stackoverflow.com/questions/6799503/classpath-entry-org-eclipse-m2e-maven2-classpath-container-will-not-be-exported

반응형