这里介绍一下maven打包成可执行jar包
1.依赖处理
mvn dependency:copy-dependencies -DoutputDirectory=target/lib
eclipse下对着工程右键->run as-> maven build... 然后复制命令:dependency:copy-dependencies -DoutputDirectory=target/lib 执行即可
2.打包jar
上面的依赖处理中,第三方jar包都导入到了target/lib目录下
然后配置pom.xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<!-- 生成的jar中,不要包含pom.xml和pom.properties这两个文件 -->
<addMavenDescriptor>false</addMavenDescriptor>
<manifest>
<!-- 是否要把第三方jar放到manifest的classpath中 -->
<addClasspath>true</addClasspath>
<!-- 生成的manifest中classpath的前缀,因为要把第三方jar放到lib目录下,所以classpath的前缀是lib/ -->
<classpathPrefix>lib/</classpathPrefix>
<mainClass>Provider</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
和可以直接这样,执行命令的时候执行maven package即可
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.5</version>
<configuration>
<archive>
<manifest>
<mainClass>com.JMSConsumer</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>