[eclipse] Eclipse 프로젝트에서 Maven 종속성 누락

의존성을 해결하기 위해 maven으로 설정된 프로젝트가 있습니다. 일반적으로 잘 작동하지만 이제 새 PC에서 컴파일하고 실행하려고하는데 Eclipse에서 종속성이 누락되는 문제가 있습니다.

재미있는 것은 콘솔이나 이클립스에서 “mvn package”를 실행하면 잘 작동하고 필요한 모든 항아리를 포함하는 전쟁을 생성한다는 것입니다. Eclipse에서만 “빌드 경로가 불완전하여 프로젝트가 빌드되지 않았습니다. org.slf4j.Logger에 대한 클래스 파일을 찾을 수 없습니다 …”라고 불평합니다. 프로젝트를 다른 컴퓨터 (프로젝트가 잘 작동하는 컴퓨터)와 비교하면 Eclipse의 “Maven 종속성”목록 아래에 누락 된 라이브러리가 상당히 많다는 것을 알 수 있습니다. 패키지 전쟁에 있지만 저장소 폴더에서도 찾을 수 있습니다.

따라서 jar-s는 Eclipse가 “Maven 종속성”아래에 모두 나열하지 않습니다. 어떡해?

컴퓨터는 Windows 7에서 64 비트 Java 및 Eclipse로 실행됩니다.



답변

글쎄, 나는 여기에 게시 된 모든 것을 시도했지만 불행히도 내 경우에는 아무것도 작동하지 않습니다. 그래서 다른 조합을 시도해 보았습니다.

1) Eclipse 프로젝트의 루트에서 .classpath 파일을 엽니 다 .

2) 파일에 다음 항목을 삽입하십시오.

<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
            <attribute name="org.eclipse.jst.component.nondependency" value=""/>
        </attributes>
</classpathentry> 

그런 다음 Eclipse에서 프로젝트를 다시 빌드하십시오 (Project-> Clean-Build). 이제 Maven 종속성이 포함 된 라이브러리 탭에서 프로젝트의 Java 빌드 경로를 확인할 수 있습니다.
여기에 이미지 설명 입력


답변

문제 해결됨!

정확히 무엇을 해결했는지는 모르겠지만 Eclipse에서 4 가지 작업을 수행했습니다.

  • Window-> Preferences : Maven-> Installations : Global settings-> open file 및 hardcoded localRepository
  • 프로젝트-> 청소
  • 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오. Maven-> 종속성 업데이트
  • 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오. Maven-> 프로젝트 구성 업데이트

처음 두 번 후에 변경 사항이 없었기 때문에 업데이트 종속성이라고 생각합니다.


답변

나는 또한 Eclipse를 처음 접했으며 모든 징후가 종속성이 성공적으로 다운로드되었음을 가리 키더라도 Eclipse가 import 문을 인식하지 못하는 유사한 문제를 겪었습니다.

명령 줄로 이동하여 다음을 입력하여 종속성 파일이 실제로 다운로드되었는지 확인해야합니다.

mvn dependency:tree

거기에 패키지가 표시되지만 Eclipse가 인식하지 못하는 경우 (때때로) 터미널로 이동하여 프로젝트 폴더로 이동하여 다음을 입력하십시오.

mvn eclipse:clean
그때
mvn eclipse:eclipse

마지막으로 Eclipse에서 프로젝트 새로 고침

나는 이것이 왜 작동하는지 모르겠고 때로는 한 번 작동하지 않고 다시 작동합니다 … 그래서 시도 할 가치가 있습니다!


답변

내 프로젝트가 망가 졌어요. Eclipse Indigo x64 (J2EE 3.7.3)에서 수정 한 방법은 다음과 같습니다.

  1. 내 POM 파일을 삭제했습니다 (물론 백업).
  2. 프로젝트 컨텍스트 메뉴 > Maven > Maven Nature 비활성화 .
  3. 프로젝트를 삭제했습니다 (디스크의 내용은 제외).
  4. 가져 오기 > 일반 > 기존 프로젝트 로 다시 가져 왔습니다 .
  5. 프로젝트 컨텍스트 메뉴 > 구성 > 메이븐 프로젝트로 변환 … .
  6. Maven 마법사의 기본값을 수락합니다.
  7. 백업 된 POM으로 POM을 덮어 씁니다. (이제 Maven Dependencies 폴더가 있습니다 ).
  8. 좋은 측정을 위해 Maven 업데이트 / 정리.

누군가에게 도움이되기를 바랍니다. 🙂


답변

다른 프로젝트에서 생성 된 종속성에 대해이 문제가 발생했습니다. 다운로드 한 타사 종속성이 빌드 경로에 제대로 표시되었지만 내가 만든 라이브러리는 표시되지 않았습니다.

SOLUTION: 제대로 구축되지 않은 프로젝트에서

  • 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택한 다음 Maven을 선택합니다.

  • 표시된 상자 “의 선택을 취소 작업 공간 프로젝트에서 해결 종속성을

  • 적용을 누른 다음 확인을 누르십시오.

  • 프로젝트를 다시 마우스 오른쪽 버튼으로 클릭하고 Maven-> Update Snapshots (또는 Update Dependencies)를 수행합니다.

프로젝트를 다시 빌드하면 오류가 사라집니다 (자동 빌드가 활성화 된 경우 자동으로).


답변

글쎄, 나는 여기에 게시 된 모든 것을 시도했지만 불행히도 내 경우에는 아무것도 작동하지 않습니다. 그래서 다른 조합을 시도해 보았습니다.

1) Eclipse 프로젝트의 루트에서 .classpath 파일을 엽니 다 .

2) 파일에 다음 항목을 삽입하십시오.

<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
            <attribute name="org.eclipse.jst.component.nondependency" value=""/>
        </attributes>
</classpathentry> 

그런 다음 Eclipse에서 프로젝트를 다시 빌드하십시오 (Project-> Clean-Build).


답변

누군가가 다른 모든 옵션을 시도했지만 여전히 멈춘 경우 프로젝트 폴더를 마우스 오른쪽 버튼으로 클릭하고 Maven 옵션으로 이동 한 다음 “종속성 추가”버튼을 클릭하십시오. 어떤 이유로 Eclipse는 처음 시도 할 때 pom.xml 에서 종속성을 수동으로 업데이트하지 않습니다 .

메뉴 선택 스크린 샷