जैसा कि @Shashank ने बताया, आप मेवेन को मेवेन-जार-प्लगइन भी निष्पादित कर सकते हैं। लेकिन यह केवल एक जार बनाएगा, जिसमें केवल संकलित वर्ग शामिल हैं, लेकिन वेबपैड स्रोत नहीं।
वहाँ आसान तरीका कैसे स्पष्ट रूप से mvn clean install jar:jar
लागू बिना सिर्फ एक सरल mvn clean install
आदेश के साथ एक बहु मॉड्यूल परियोजना में यह करना है:
बस >build>plugins
को maven-jar-plugin
जोड़ सकते हैं और "पैकेज" चरण में इसे कहते:
<project>
<packaging>war</packaging>
<!-- .. -->
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<classifier>classes</classifier>
</configuration>
<executions>
<execution>
<id>package-jar</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
यह एक बड़ा .war और small -classes.jar artifact बना देगा।
अद्यतन 2017/06/15: दूसरी ओर, आप युद्ध फ़ाइल (न केवल पैक जावा वर्ग) है, जो की तरह एक जार फ़ाइल के रूप में नकाबपोश है की एक सटीक प्रतिलिपि की जरूरत है , आप एक WAR की जार प्रतिलिपि बनाने के लिए maven-dependency-plugin
और maven-install-plugin
के संयोजन का उपयोग कर सकते हैं। (मैं इस तरह के एक समाधान की जरूरत होती हुआ - मत पूछो क्यों;))
एक नया मॉड्यूल है कि युद्ध मॉड्यूल पर dependend है बनाएँ:
<project>
<!-- ... -->
<dependencies>
<!-- ... -->
<dependency>
<groupId>your-group-id-here</groupId>
<artifactId>your-war-artifact-id-here</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
</execution>
</executions>
<configuration>
<artifactItems>
<artifactItem>
<groupId>your-group-id-here</groupId>
<artifactId>your-war-artifact-id-here</artifactId>
<version>${project.version}</version>
<type>war</type>
<overWrite>true</overWrite>
<destFileName>jar-copy-of-war.jar</destFileName>
</artifactItem>
</artifactItems>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>true</overWriteSnapshots>
</configuration>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<executions>
<execution>
<id>install-copy-of-war</id>
<phase>install</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<packaging>jar</packaging>
<classifier>copy-of-war</classifier>
<artifactId>${project.artifactId}</artifactId>
<groupId>your-group-id-here</groupId>
<version>${project.version}</version>
<file>${project.build.directory}/dependency/jar-copy-of-war.jar</file>
<generatePom>true</generatePom>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
यह की एक प्रतिलिपि बना देगा युद्ध, इसे नाम दें "- कॉपी-ऑफ-वार.जर", जबकि "प्रतिलिपि युद्ध" इस मॉड्यूल के लिए वर्गीकृत है।
[मैवेन अतिरिक्त जार फ़ाइल तैनात] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/754216/maven-deploy-additional-jar-file) –