2011-09-24 17 views
86
[INFO] [war:war {execution: default-war}] 
[INFO] Packaging webapp 
[INFO] ------------------------------------------------------------------------ 
[ERROR] FATAL ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
---- Debugging information ---- 
message    : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
cause-exception  : com.thoughtworks.xstream.converters.reflection.ObjectAccessException 
cause-message  : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
class    : org.apache.maven.plugin.war.util.WebappStructure 
required-type  : org.apache.maven.plugin.war.util.WebappStructure 
path    : /webapp-structure 
line number   : 1 
------------------------------- 
[INFO] ------------------------------------------------------------------------ 
[INFO] Trace 
com.thoughtworks.xstream.converters.ConversionException: Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
---- Debugging information ---- 
message    : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
cause-exception  : com.thoughtworks.xstream.converters.reflection.ObjectAccessException 
cause-message  : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
class    : org.apache.maven.plugin.war.util.WebappStructure 
required-type  : org.apache.maven.plugin.war.util.WebappStructure 
path    : /webapp-structure 
line number   : 1 
------------------------------- 
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:63) 
    at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:45) 
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:46) 
    at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:117) 
    at com.thoughtworks.xstream.core.ReferenceByXPathMarshallingStrategy.unmarshal(ReferenceByXPathMarshallingStrategy.java:29) 
    at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:846) 
    at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:833) 
    at com.thoughtworks.xstream.XStream.fromXML(XStream.java:781) 
    at org.apache.maven.plugin.war.util.WebappStructureSerializer.fromXml(WebappStructureSerializer.java:73) 
    at org.apache.maven.plugin.war.AbstractWarMojo.buildWebapp(AbstractWarMojo.java:404) 
    at org.apache.maven.plugin.war.AbstractWarMojo.buildExplodedWebapp(AbstractWarMojo.java:375) 
    at org.apache.maven.plugin.war.WarMojo.performPackaging(WarMojo.java:181) 
    at org.apache.maven.plugin.war.WarMojo.execute(WarMojo.java:143) 
    at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490) 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556) 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535) 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348) 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) 
    at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) 
    at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) 
    at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 
    at org.codehaus.classworlds.Launcher.main(Launcher.java:375) 
Caused by: com.thoughtworks.xstream.converters.reflection.ObjectAccessException: Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor 
    at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.newInstance(PureJavaReflectionProvider.java:59) 
    at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.instantiateNewInstance(AbstractReflectionConverter.java:257) 
    at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:124) 
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:56) 
    ... 31 more 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 4 seconds 
[INFO] Finished at: Sat Sep 24 17:25:45 CEST 2011 
[INFO] Final Memory: 15M/37M 
[INFO] ------------------------------------------------------------------------ 

JDK नहीं है: 1,7org.apache.maven.plugin.war.util.WebappStructure का निर्माण नहीं किया जा सकता, क्योंकि यह एक no-args निर्माता

Maven संकलक प्लगइन:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>2.3.2</version> 
</plugin> 

जब मैं त्रुटि ऊपर स्थापित लक्ष्य चलाता हूं, तो मैं इसे कैसे हल कर सकता हूं?

+0

संभवतः आपके एक्सस्ट्रीम संस्करण को टक्कर देता है? – rogerdpack

उत्तर

134

शायद maven war plugin का एक संस्करण उपयोग किया जा रहा है, जो जावा 7 के साथ काम नहीं करता है? this issue के अनुसार (जो एक समान समस्या का वर्णन करता है), 2.1.1 मेवेन युद्ध प्लगइन का संस्करण काम करना चाहिए।

अपने pom.xml

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
    <version>2.1.1</version> 
</plugin> 
+0

लेकिन यह नहीं पता कि पैच – TechFind

+0

@ kasim को कैसे लागू करें। यह इंगित करने के लिए अपडेट किया गया जवाब यह कैसे करें। – Raghuram

+2

मुझे जेनकिन्स – ayengin

5

पुष्टि में निम्नलिखित को शामिल करें, मैं Maven 3.0.2 और JDK 1.7.0_02 के साथ एक ही मुद्दे में भाग गया। Jdk 1.6.0_30 के खिलाफ चलने के बाद यह ठीक ठीक संकलित हुआ।

8

यह पुष्टि हुई है: मैवेन 2.x के साथ जेडीके 7 इस त्रुटि का उत्पादन करेगा।

मैवेन 2.2.1 और जेडीके 7 का उपयोग कर रहा हूं और यह त्रुटि मिली है। मैंने जेडीके को संस्करण 1.6 में बदल दिया और यह ठीक काम कर रहा है।

8
इसके बजाय JDK संस्करणों और Maven संस्करणों बदलने की

, इस प्रयास करें:

<plugin> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <configuration> 
     <source>1.7</source> 
     <target>1.7</target> 
    </configuration> 
    <version>2.3.2</version> 
</plugin> 
2

अगर आपके JDK 1.6 का उपयोग कर कृपया अपने pom.xml

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>2.0.2</version> 
    <configuration> 
     <source>1.6</source> 
     <target>1.6</target> 
     <compilerArgument>-Xlint:all</compilerArgument> 
     <showWarnings>true</showWarnings> 
     <showDeprecation>true</showDeprecation> 
    </configuration> 
</plugin> 
+0

धन्यवाद, यहां तक ​​कि विकल्पों को जोड़ने से निर्माण को ठीक करने में मदद मिली :) –

13

को यह प्लगइन प्रविष्टि जोड़ने मैं इस समस्या को जब था mvn install कर रहा है। मैंने इसे mvn clean पहले करके mvn install करके हल किया।

मेवेन 2.1.1, जेडीके 1.7.0.45 का उपयोग करना।

0

सुनिश्चित करें कि आपके बिल्ड पथ में जेडीके संस्करण होना चाहिए और स्रोत टैग में निर्दिष्ट संस्करण से मेल खाता है।

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>2.1</version> 
    <configuration> 
    **<source>1.7</source>** 
     <target>1.7</target> 
     <debug>true</debug> 
    </configuration> 
</plugin> ` 

मैं निर्माण पथ 1.7 और "1.6" स्रोत टैग में JDK के लिए, जब मैं स्रोत टैग में 1.7 संस्करण को सही समस्या का समाधान हो गया ओर इशारा करते हुए किया था।

एमएनवी स्वच्छ और एमवीएन पैकेज निष्पादित करें।

2

यह निश्चित रूप से असंगत प्लगइन, पुस्तकालय और भाषा संस्करण से संबंधित प्रतीत होता है।

दो साल और दो जावा संस्करण बाद में, मुझे स्प्रिंग और हाइबरनेट पर पुरानी पुस्तक से नमूना प्रोजेक्ट करते समय भी यही त्रुटि हुई।

मैं apache.maven.plugins के लिए सभी संस्करण टैग्स को टिप्पणी करके और जावा संस्करण को 1.8 पर सेट करके त्रुटि को हल करने में सक्षम था। यह मुझे बताता है कि संस्करण टैग को याद करने के बारे में मेवेन से कुछ चेतावनियों की लागत के साथ पुस्तकालयों का नवीनतम और सबसे बड़ा संस्करण क्या था। यदि आप चेतावनियों की परवाह करते हैं, तो आप संस्करण टैग को नवीनतम संस्करण के रूप में सेट कर सकते हैं और मेवेन से चेतावनियों को दूर जाना चाहिए।

मैंने mvn clean package और फिर mvn package निष्पादित किया।

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
<!-- <version>2.1-beta-1</version> --> 
</plugin> 
<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
<!-- <version>2.1</version> --> 
    <configuration> 
      <source>1.8</source> 
      <target>1.8</target> 
    </configuration> 
</plugin> 
0

मुझे अपने ग्रहण केप्लर के साथ यह समस्या थी। जैसे ही मैं 4.4 (लुना) चले गए, सब चले गए। Eclipse + maven एम्बेडेड

के साथ कोई समस्या होनी चाहिए मैंने जेडीके 1.7 और 1.8 दोनों की कोशिश की। कोई फर्क नहीं।

4

मुझे नहीं लगता कि संस्करण समस्या थी। मैंने अपने लक्ष्य फ़ोल्डर को हटाने का हल किया (क्योंकि इसमें webapp-cache.xml है) और मेवेन को फिर से स्थापित करना।

1

मेरे लिए प्लगइन संस्करण बदलने के लिए problme हल नहीं हो सकता है और जेडीके संस्करण बदलना मेरे नियंत्रण में नहीं है।

हालांकि mvn cleanmvn tomcat6:deploy से पहले इस समस्या को हल किया गया।

0

अपने सभी कैश को हटाने का प्रयास करें। जब मैंने लक्ष्य फ़ोल्डर हटा दिया, तो यह ठीक काम करता है।

(लक्ष्य फ़ोल्डर वह जगह है जहां मैवेन सभी संकलित कोड डालता है)

संबंधित मुद्दे

 संबंधित मुद्दे