2014-04-29 9 views
5

का सामना करना पड़ा था, जब codehaus से
jaxb2-Maven-प्लगइन का उपयोग कर मैं ग्रहण में निम्न समस्या मार्कर इस मार्कर की सामग्री है मिल निम्नलिखित:org.codehaus.mojo: jaxb2-Maven-प्लगइन: 1.6 -> एपीआई असंगति

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 प्लगइन के साथ एकाधिक निष्पादन ब्लॉक को संभालने में प्रतीत नहीं होता है। कमांड लाइन मेवेन इन रूपों को सही ढंग से चलाता है, हालांकि। यदि आप 1.5 जैक्सबी प्लगइन तक बैक अप लेते हैं, तो एम 2 खुश है, लेकिन प्लगइन केवल निष्पादन ब्लॉक के पहले भाग को चलाता है, जिससे आप एक अलग टूटे हुए निर्माण के साथ जाते हैं।

मेरा समाधान (अब तक) m2e का उपयोग नहीं करना है, हालांकि यह स्पष्ट रूप से गैर-इष्टतम है।

6

मुझे एक ही त्रुटि मिली। मैंने इसे jaxb2-maven-plugin के संस्करण 1.5 (1.6 के बजाय) का उपयोग करके हल किया।

0

मुझे एक ही समस्या थी। मैंने इसे नवीनतम ग्रहण लुना 4.4 (जावा डेवलपर संस्करण में अपडेट करके हल किया है जिसमें एम 2 ई-वीटीपी शामिल है, जावा ईई संस्करण नहीं)। मुझे लगता है कि इसमें m2e-wtp का एक नया संस्करण शामिल है जो इस समस्या को हल करता है (?!)