0
나는 컴파일 단계에서 실행되는 커스텀 메이븐 플러그인을 만들었습니다. 플러그인이 클래스 경로에서 리소스를 찾으려고 시도했지만 은 찾을 수 없습니다. 플러그인 :컴파일 단계에서 커스텀 메이븐 플러그인의 리소스를 가져올 수 없습니다.
<plugin>
<groupId>com.mygroup</groupId>
<artifactId>myplugin-maven-plugin</artifactId>
<version>0.0.1-SNAPSHOT</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
</plugin>
플러그인의 코드에서 내가 사용하고 :
프로젝트의 루트에 MYFILE.TXT를 넣어 시도하는 데, 설치 MVN 청소를 실행할 때 NullPointerException이 결과InputStream is = this.getClass().getClassLoader().getResource("myFile.txt").openStream();
, src 폴더 또는 src/main/resources 폴더. getResource가 을 리턴 할 때마다. 또한 사용하려고 시도 :
InputStream is = Thread.currentThread().getContextClassLoader().getResource("myFile.txt").openStream();
또한 모두 getResourceAsStream하지만 아무 도움이.
이것은 컴파일 단계와 관련이 있습니까? 플러그인을 사용하여 입력 파일의 속성을 기반으로 코드를 생성하고 싶습니다.
감사합니다.
여기에 오해됩니다. 플러그인이 getResource()를 통해 리소스에 액세스하려고하면 자체 jar 내에서 검색하거나 플러그인 클래스 경로에서 더 정확하게 검색하지만 ** 생성되는 프로젝트의 클래스 경로에서는 ** 검색하지 않습니다. 소스 코드를 살펴보면 프로젝트 경로에 액세스하는 방법에 대한 maven-resources-plugin ... – khmarbaise
고마워,하지만 올바른 클래스 경로를 찾고 있으므로 프로젝트에서 플러그인을 사용하고 있습니다. 하지만 문제가 발견되었습니다. 컴파일 단계를 실행 중에 지정해서는 안됩니다. 그러므로 나는 내 자신의 질문에 대답 할 것이다. – Kjeld