2013-10-02 8 views
4

this has been asked before을 알고 있지만 여전히이 문제를 해결하는 데 어려움이 있습니다. 나는 이클립스에 프로젝트를로드 할 때 나는 다음과 같은 예외를 얻을 :플러그인 maven-antrun-plugin 실행이 m2e의 생명주기 구성에 포함되지 않음

Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-antrun-plugin:1.7:run (execution: generate-webapp-name, phase: compile) 

내 받는다는 프로젝트는 많은 모듈 (> 200)로 구성되어 있으며 모두에 문제가 발생합니다.

나는 나의 pom.xml (에서 부모 모듈)에 runcompile 목표를 무시하고 시도 :

<pluginManagement> 
    <plugins> 
     <plugin> 
      <groupId>org.eclipse.m2e</groupId> 
      <artifactId>lifecycle-mapping</artifactId> 
      <version>1.0.0</version> 
      <configuration> 
       <lifecycleMappingMetadata> 
        <pluginExecutions> 
         <pluginExecution> 
          <pluginExecutionFilter> 
           <groupId>org.apache.maven.plugins</groupId> 
           <artifactId>maven-antrun-plugin</artifactId> 
           <versionRange>[1.7,)</versionRange> 
           <goals> 
            <goal>compile</goal> 
            <goal>run</goal> 
           </goals> 
          </pluginExecutionFilter> 
          <action> 
           <ignore/> 
          </action> 
         </pluginExecution> 
        </pluginExecutions> 
       </lifecycleMappingMetadata> 
      </configuration> 
     </plugin> 
    </plugins> 
</pluginManagement> 

를하지만 여전히 작동하지 않습니다.

+0

예상되는 동작은 무엇입니까? – user944849

+0

@ user944849 - 예상되는 동작이 없습니다. 난 그냥 일식 프로젝트를 가져 오려면 내가 언급 한 예외를 보지 않으려합니다. 필자가 제공 한 pom.xml 코드는 문제를 설명하고 그 이유를 설명하는 유사한 질문 (다른 플러그인과 함께)에서 가져 왔습니다. 나는 다른 질문을했지만 문제는 여전히 남아있다. – Avi

+0

모든 프로젝트를 선택하고 마우스 오른쪽 버튼을 클릭하고'메이븐 -> 프로젝트 업데이트 ... '를 선택하여 도움이되는지 확인하십시오. – user944849

답변

2

maven-antrun-plugin (내 경우 run)에 대해 설정 한 목표는 인 이어야합니다. 이 페이지로 누군가를 들어, plugins 태그 전에이 코드를 추가

<pluginManagement> 
    <plugins> 
     <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. --> 
     <plugin> 
      <groupId>org.eclipse.m2e</groupId> 
      <artifactId>lifecycle-mapping</artifactId> 
      <version>1.0.0</version> 
      <configuration> 
       <lifecycleMappingMetadata> 
        <pluginExecutions> 
         <pluginExecution> 
          <pluginExecutionFilter> 
           <groupId>org.apache.maven.plugins</groupId> 
           <artifactId>maven-antrun-plugin</artifactId> 
           <versionRange>[1.7,)</versionRange> 
           <goals> 
            <goal>run</goal> 
           </goals> 
          </pluginExecutionFilter> 
          <action> 
           <execute /> 
          </action> 
         </pluginExecution> 
        </pluginExecutions> 
       </lifecycleMappingMetadata> 
      </configuration> 
     </plugin> 
    </plugins> 
</pluginManagement> 

소스 가치가 무엇인지, 내가 아주 간단한 개미 코드를 사용하고 들어 here

. 내가 사용하고있는 플러그인 코드는 다음과 같습니다. deploy 단계를 사용했지만 원하는 경우 다른 것을 사용할 수 있습니다.

<plugins> 
    <plugin> 
     <artifactId>maven-antrun-plugin</artifactId> 
     <version>1.8</version> 
     <executions> 
      <execution> 
       <id>antrun.package</id> 
       <phase>deploy</phase> 
       <goals> 
        <goal>run</goal> 
       </goals> 
       <configuration> 
        <target> 
         <mkdir dir="${destinationBasePath}/WEB-INF/classes"/> 
         <copy todir="${destinationBasePath}\WEB-INF\classes"> 
          <fileset dir="${basedir}/target/classes" includes="**" /> 
         </copy> 
        </target> 
       </configuration> 
      </execution> 
     </executions> 
    </plugin> 
</plugins> 
+2

답변 해 주셔서 감사합니다. 그것이 3 년 전 이었기 때문에 나는 그것을 받아 들일 수 없다. 나는 이미 2 개의 작업장을 바꿨으므로 그것을 재현 할 방법이 없으며 (이 문제를 기억하지도 않습니다.) 귀하의 답변에 감사드립니다. 다른 사람들이 유용하다는 것을 알게되기를 바랍니다 :) – Avi

+0

괜찮습니다. 새로운 방문자를 돕기위한 의도였습니다. 이 솔루션을 이해하려고 많은 시간을 보냈습니다. 다른 사람들이 그것을 더 빨리 찾을 수 있기를 바랍니다. –