मैं प्रोग्राम के Maven-निर्भरता-प्लगइन को लागू करने की कोशिश कर रहा हूँ आह्वान करने के लिए। मैं maven 3 संस्करण का उपयोग कर रहा हूँ।कैसे प्रोग्राम के एक Maven निर्भरता प्लगइन
[ERROR] **The parameters 'project', 'local', 'remoteRepos',
'reactorProjects' for goal
org.apache.maven.plugins:maven-dependency-plugin:2.1:unpack are
missing or invalid**
**org.apache.maven.plugin.PluginParameterException: The parameters 'project',
'local', 'remoteRepos', 'reactorProjects' for goal
org.apache.maven.plugins:maven-dependency-plugin:2.1:unpack are missing or
invalid**
at org.apache.maven.plugin.internal.DefaultMavenPluginManager
.populatePluginFields(DefaultMavenPluginManager.java:518)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager
.getConfiguredMojo(DefaultMavenPluginManager.java:471)
at org.apache.maven.plugin.DefaultBuildPluginManager
.executeMojo(DefaultBuildPluginManager.java:99)
at com.sap.ldi.qi.osgi.OSGiManifesrMfHandlerMojo
.invokeMavenDependencyPlugin(OSGiManifesrMfHandlerMojo.java:139)
at com.sap.ldi.qi.osgi.OSGiManifesrMfHandlerMojo
.execute(OSGiManifesrMfHandlerMojo.java:100)
at org.apache.maven.plugin.DefaultBuildPluginManager
.executeMojo(DefaultBuildPluginManager.java:110)
at org.apache.maven.lifecycle.internal.MojoExecutor
.execute(MojoExecutor.java:144)
at org.apache.maven.lifecycle.internal.MojoExecutor
.execute(MojoExecutor.java:87)
at org.apache.maven.lifecycle.internal.MojoExecutor
.execute(MojoExecutor.java:79)
-- many lines stripped from stack trace --
[INFO] ----------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ----------------------------------------------------------------------
[INFO] Total time: 17.938s
[INFO] Finished at: Mon Nov 22 10:27:42 EET 2010
[INFO] Final Memory: 12M/23M
[INFO] ----------------------------------------------------------------------
[ERROR] Failed to execute goal
com.sap.ldi.qi:osgi-manifest-handler-plugin:0.0.1-SNAPSHOT:handle
(osgi-manifest-handler plugin) on project com.sap.ldi.demo.calc
.cmd.tests: The parameters 'project', 'local', 'remoteRepos',
'reactorProjects' for goal
org.apache.maven.plugins:maven-dependency-plugin:2.1:unpack are missing
or invalid -> [Help 1]
-- stripped rest --
मुझे पता है के रूप में, Maven निर्भरता प्लगइन का खोल लक्ष्य के लिए केवल आवश्यक पैरामीटर artifactItems है: समस्या यह है कि जब मैं pluginManager.executeMojo (सत्र, निष्पादन) के माध्यम से यह आह्वान, मैं निम्नलिखित त्रुटि संदेश प्राप्त होता है । मैं प्लगइनExecution.set कॉन्फ़िगरेशन() विधि का उपयोग करके प्लगइन कॉन्फ़िगरेशन सेट करता हूं। ऐसा लगता है कि यह प्लगइन विन्यास सही ढंग से सेट नहीं है। क्या आपको कोई विचार है कि यह अपवाद क्यों फेंक दिया गया है?
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.sap.ldi.demo.calc</groupId>
<artifactId>com.sap.ldi.demo.calc.cmd</artifactId>
<version>0.1.2-SNAPSHOT</version>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>target/demo-calc-stuff</outputDirectory>
<includes>**/*.*</includes>
</artifactItem>
</artifactItems>
</configuration>
धन्यवाद
मेरी तरफ सेएक सुधार:
यहाँ विन्यास है कि मैं का उपयोग कर रहा है। प्रयुक्त मैवेन संस्करण मैवेन 3.0 नहीं है लेकिन मेवेन 3.0-बीटा -1 है। मुझे लगता है कि संस्करण 3.0-बीटा -1 में BuildPluginManager.loadPlugin()
में दो तर्क हैं, और संस्करण 3.0 में एक ही विधि में तीन हैं। मैं सोच रहा हूं, क्या किसी ने मैवेन 3.0 या मैवेन 3.0-बीटा -1 के साथ प्रोग्रामिक रूप से एक मेवेन प्लगइन का आह्वान करने की कोशिश की है। मैं अभी भी इसे मैवेन 3.0-बीटा -1 के साथ आमंत्रित करने की कोशिश कर रहा हूं, लेकिन यह अभी भी उपरोक्त चिपकने वाला अपवाद देता है।
मैंने सोचा कि BuildPluginManager.executeMojo() इस तरह के उपयोग के मामलों के लिए है। मुझे निम्न लिंक भी मिला, यह बताते हुए कि मैवेन प्लगइन्स को प्रोग्रामिक रूप से कैसे आमंत्रित किया जाए: http://code.google।com/p/mojo-execor/ – moisko
ऐसा लगता है कि उपयोग किया गया कार्यान्वयन मैवेन 2 के लिए है, लेकिन डॉन ब्राउन उसी विचार का उपयोग कर रहा है जैसा कि – moisko
से ऊपर बताया गया है http://stackoverflow.com/questions/526733/maven-plugin-executing- एक और प्लगइन - यह पोस्ट करने का लिंक है जिसके बारे में मैं बात कर रहा हूं। – moisko