여기서 문제는 예상되는 것이 무엇인지 모른다는 것입니다 . 현재 설정에서 명령 줄에서 플러그인을 호출하면 다음과 같이 작동합니다.
$ mvn exec : exec
[정보] 프로젝트 검색 중 ...
[정보] ----------------------------------------------- -------------------------
[정보] 건물 Q3491937
[정보] 작업 세그먼트 : [exec : exec]
[정보] ----------------------------------------------- -------------------------
[정보] [exec : exec {execution : default-cli}]
[정보] 노트북
[정보] ----------------------------------------------- -------------------------
[정보] 빌드 성공
[정보] ----------------------------------------------- -------------------------
...
전역 configuration이 사용되고 hostname명령이 실행됩니다 ( laptop내 호스트 이름 임). 즉, 플러그인이 예상대로 작동합니다.
이제 플러그인을 빌드의 일부로 실행 하려면 특정 단계에서 목표 를 바인딩 해야합니다 . 예를 들어 바인딩하려면 다음을 수행하십시오 compile.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1.1</version>
<executions>
<execution>
<id>some-execution</id>
<phase>compile</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>hostname</executable>
</configuration>
</plugin>
그리고:
$ mvn 컴파일
[정보] 프로젝트 검색 중 ...
[정보] ----------------------------------------------- -------------------------
[정보] 건물 Q3491937
[정보] 작업 세그먼트 : [컴파일]
[정보] ----------------------------------------------- -------------------------
[정보] [자원 : 자원 {실행 : 기본 자원}]
[정보] 'UTF-8'인코딩을 사용하여 필터링 된 리소스를 복사합니다.
[정보] 존재하지 않는 resourceDirectory / home / pascal / Projects / Q3491937 / src / main / resources 건너 뛰기
[정보] [컴파일러 : 컴파일 {실행 : 기본 컴파일}]
[정보] 컴파일 할 항목이 없습니다. 모든 클래스가 최신 상태입니다.
[정보] [exec : exec {execution : some-execution}]
[정보] 노트북
[정보] ----------------------------------------------- -------------------------
[정보] 빌드 성공
[정보] ----------------------------------------------- -------------------------
...
configuration내부를 지정할 수 있습니다 execution.