Windows 10에서 Maven 3.3.9를 사용하고 있습니다. 다중 POM 프로젝트가 있고 Maven 프로젝트 전체에 일부 테스트 리소스를 공유하려고합니다. 우리 모두가 알 수 있듯이 src/test/*
의 파일은 배포 JAR에 포함되지 않으므로 다른 프로젝트에서이 프로젝트를 공유 할 수 있도록 테스트 리소스 (및 리소스 이름이있는 Java 클래스) 용으로 별도의 프로젝트를 만들었습니다.Maven 빌드 후 클래스 파일 누락
src/main/java/com/example/foo/test/FooTestResources.java
src/main/resources/com/example/foo/test/resource.txt
솔직한 오른쪽 : 그림을 위해서
는의는foo-test
프로젝트의 두 개의 파일이 있다고 가정 해 봅시다? Maven에서 프로젝트를 빌드 할 때 그 결과 JAR 파일
은 com/example/foo/test/resource.txt
만 포함합니다!
com/example/foo/test/FooTestResources.class
에있을 것으로 예상되는 클래스 파일이 누락되었습니다.
실제로이 파일은 target
디렉토리에도 없습니다. 따라서 Maven이 소스 파일을 컴파일하지 않는 것입니다. 내 프로젝트 디렉토리를 FooTestResources.class
에 대해 검색했지만 존재하지 않습니다. 소스 코드 파일 FooTestResources.java
만 있습니다.
Eclipse 4.6.3에서 프로젝트를 빌드 할 때 Eclipse는 예상대로 파일 target/com/example/foo/test/FooTestResources.class
을 생성합니다. 내가 mvn clean install
을하면 사라집니다.
무슨 일입니까?
그건 이상한 일입니다. ''pom.xml''을 게시 할 수 있습니까? 일부는 거기에 마술이 냄새가 그 식 빌더에 의해 무시되고있어, 따라서 차이. – f1sh
실제 pom.xml을 보지 않고서는 내 생각에 소스 디렉토리를 다른 것으로 설정하는 pom 파일이 있습니다. mvn 명령에'-X'를 추가하여 실제로'src/main/java' 아래에 어떤 것이 든 컴파일되는지 확인하십시오. – jingx