手记

maven如何将项目引用的所有jar包复制到lib文件夹内

Maven的非web项目在执行时需要引用很多jar包,这时候通常的做法是将这些jar包统一放到lib目录中,maven的dependency插件可以帮我们做这件事情。

我们需要在pom文件的build节点的plugins节点内添加一个plugin,plugin内容如下:

 <plugin>            <groupId>org.apache.maven.plugins</groupId>            <artifactId>maven-dependency-plugin</artifactId>            <executions>                <execution>                    <id>copy-dependencies</id>                    <phase>prepare-package</phase>                    <goals>                        <goal>copy-dependencies</goal>                    </goals>                    <configuration>                        <outputDirectory>${project.build.directory}/lib</outputDirectory>                        <overWriteReleases>false</overWriteReleases>                        <overWriteSnapshots>false</overWriteSnapshots>                        <overWriteIfNewer>true</overWriteIfNewer>                    </configuration>                </execution>            </executions>        </plugin>        <plugin>            <groupId>org.apache.maven.plugins</groupId>            <artifactId>maven-jar-plugin</artifactId>            <configuration>                <archive>                    <manifest>                        <addClasspath>true</addClasspath>                        <classpathPrefix>lib/</classpathPrefix>                        <mainClass>theMainClass</mainClass>                    </manifest>                </archive>            </configuration>        </plugin>

上面配置中我们使用了maven-dependency-plugin插件,然后执行了(execution节点)copy-dependencies操作。我们指定的输出目录是:${project.build.directory}/lib,这里的${project.build.directory}就是我们通常看到的target目录,也就是要把jar复制到target目录下的lib目录下。

原文链接:http://outofmemory.cn/maven/FAQ/how-to-copy-dependency-to-lib-folder

0人推荐
随时随地看视频
慕课网APP