最近在研究Maven,发现照着网上教程走一遍下来,到打包生成可执行的jar文件的地方,需要一个插件maven-shade-plugin,但是不知道具体插件代码放在什么文件的什么地方。
尝试了几次,发现是放在工程下的pom.xml中,<project><dependencies></dependencies>和</project>之间。下面是一个完整的pom.xml文件。工程为下面网址教程中提到的。
http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.fish.mvnbook</groupId>
<artifactId>helloworld</artifactId>
<version>1.0-SNAPSHOT</version>
<name>Maven Hello World Project</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.fish.mvnbook.helloworld.HelloWorld</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
其中,com.fish.mvnbook.helloworld.HelloWorld为含有main函数的类文件。