在实习过程中使用Maven管理项目和依赖包中遇到的一些问题,特以此文汇总:
Maven工程打成Jar包
最重要的是将依赖打入jar包,由于Maven管理了所有的依赖,所以将项目的代码和依赖打成一个包对它来说是顺理成章的功能。Maven的这个功能之前就用过,用maven的assembly插件,但assembly插件功能强大,可以打zip、war各种包,所以一下子找不到如何将依赖打入jar包了。浪费了一点时间,所以一定要记录一下。
需要在pom.xml中配置一下:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-dependencies</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/classes/lib</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>false</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.3</version> <executions> <execution> <id>copy-resources</id> <phase>package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <encoding>UTF-8</encoding> <outputDirectory>${project.build.directory}/classes</outputDirectory><!-- 把配置文件拷到和jar包同一个路径下 --> <resources> <resource> <directory>src/main/resources/</directory> </resource> <resource> <directory>src/main/java/</directory> <includes> <span style="white-space:pre"> </span><include>**/*.xml</include> </includes> </resource> </resources> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
之后再在cmd.exe中cd 到工程路径,分别输入mvn clean,mvn install工程打成的jar包就在Maven工程的target文件夹中,其它非Maven引用即可。