2014-04-29 4 views
5

을 발생했습니다 난 일식 에서 다음과 같은 문제 마커이 마커의 내용이 포함 얻을 다음org.codehaus.mojo : JAXB2 - 받는다는 - 플러그인 : 1.6 - codehaus에서 <br> JAXB2 - 받는다는 - 플러그인을 사용하는 경우> API의 호환성이

Description Resource Path Location Type 
Execution configuration of goal org.codehaus.mojo:jaxb2-maven-plugin:1.6:xjc failed: An API incompatibility was encountered while executing org.codehaus.mojo:jaxb2-maven-plugin:1.6:xjc: java.lang.NoSuchMethodError: org.codehaus.plexus.util.DirectoryScanner.setupMatchPatterns()V 
----------------------------------------------------- 
realm = plugin>org.codehaus.mojo:jaxb2-maven-plugin:1.6 
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy 
urls[0] = file:/C:/develop/maven/repository/org/codehaus/mojo/jaxb2-maven-plugin/1.6/jaxb2-maven-plugin-1.6.jar 
urls[1] = file:/C:/develop/maven/repository/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.jar 
urls[2] = file:/C:/develop/maven/repository/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.jar 
urls[3] = file:/C:/develop/maven/repository/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.jar 
urls[4] = file:/C:/develop/maven/repository/org/apache/maven/reporting/maven-reporting-api/2.2.1/maven-reporting-api-2.2.1.jar 
urls[5] = file:/C:/develop/maven/repository/org/apache/maven/doxia/doxia-sink-api/1.1/doxia-sink-api-1.1.jar 
urls[6] = file:/C:/develop/maven/repository/org/apache/maven/doxia/doxia-logging-api/1.1/doxia-logging-api-1.1.jar 
urls[7] = file:/C:/develop/maven/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar 
urls[8] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar 
urls[9] = file:/C:/develop/maven/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar 
urls[10] = file:/C:/develop/maven/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar 
urls[11] = file:/C:/develop/maven/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar 
urls[12] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar 
urls[13] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-xjc/2.2.7/jaxb-xjc-2.2.7.jar 
urls[14] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-core/2.2.7/jaxb-core-2.2.7.jar 
urls[15] = file:/C:/develop/maven/repository/javax/xml/bind/jaxb-api/2.2.7/jaxb-api-2.2.7.jar 
urls[16] = file:/C:/develop/maven/repository/com/sun/istack/istack-commons-runtime/2.16/istack-commons-runtime-2.16.jar 
urls[17] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-jxc/2.2.7/jaxb-jxc-2.2.7.jar 
urls[18] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-impl/2.2.7/jaxb-impl-2.2.7.jar 
urls[19] = file:/C:/develop/maven/repository/com/sun/xml/fastinfoset/FastInfoset/1.2.12/FastInfoset-1.2.12.jar 
urls[20] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-compiler-api/1.9.1/plexus-compiler-api-1.9.1.jar 
urls[21] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-utils/3.0.16/plexus-utils-3.0.16.jar 
Number of foreign imports: 4 
import: Entry[import org.sonatype.plexus.build.incremental from realm ClassRealm[plexus.core, parent: null]] 
import: Entry[import org.codehaus.plexus.util.Scanner from realm ClassRealm[plexus.core, parent: null]] 
import: Entry[import org.codehaus.plexus.util.AbstractScanner from realm ClassRealm[plexus.core, parent: null]] 
import: Entry[import from realm ClassRealm[maven.api, parent: null]] 

----------------------------------------------------- 
(org.codehaus.mojo:jaxb2-maven-plugin:1.6:xjc:configuration:generate-sources) pom.xml 

플러그인의 구성은 다음과 같습니다

<plugin> 
        <groupId>org.codehaus.mojo</groupId> 
        <artifactId>jaxb2-maven-plugin</artifactId> 
        <version>1.6</version> 
        <executions> 
         <execution> 
          <id>data</id> 
          <goals> 
           <goal>xjc</goal> 
          </goals> 
          <configuration> 
           <schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory> 
           <schemaFiles>WebServiceDataSchema.xsd</schemaFiles> 
           <packageName>my.cool.package.jaxb.data</packageName> <!-- The name of your generated source package --> 
           <outputDirectory>${project.basedir}/src/gen/java</outputDirectory> 
           <target>2.1</target> 
          </configuration> 
         </execution> 

         <execution> 
          <id>configuration</id> 
          <goals> 
           <goal>xjc</goal> 
          </goals> 
          <configuration> 
           <schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory> 
           <schemaFiles>WebServiceConfigurationSchema.xsd</schemaFiles> 
           <packageName>my.cool.package.jaxb.config</packageName> <!-- The name of your generated source package --> 
           <outputDirectory>${project.basedir}/src/gen/java</outputDirectory> 
           <target>2.1</target> 
           <clearOutputDir>false</clearOutputDir> 
          </configuration> 
         </execution> 

        </executions> 

       </plugin> 

사람이 비슷한 문제가 있습니까?

답변

2

m2e는 1.6 플러그인으로 여러 실행 블록을 처리하지 않는 것 같습니다. 명령 행 maven은 이러한 양식을 올바르게 실행합니다. 1.5 jaxb 플러그인으로 백업하는 경우 m2e는 만족스럽지 만 플러그인은 실행 블록 중 첫 번째 블록 만 실행하므로 다른 빌드가 깨집니다.

내 솔루션 (지금까지)이 m2e를 사용하지 않는 것이 분명하지만, 이는 분명히 최적이 아닙니다.

6

비슷한 오류가 발생했습니다. jaxb2-maven-plugin 버전 1.5 (1.6 대신)를 사용하여이 문제를 해결했습니다.

0

같은 문제가있었습니다. 필자는 최신 Eclipse Luna 4.4 (Java EE 버전이 아닌 m2e-wtp가 포함 된 Java Developer 버전)로 업데이트하여이 문제를 해결했습니다. 나는이 문제를 수정 한 m2e-wtp의 최신 버전을 포함하고 있다고 생각한다. (?!)

관련 문제