使用maven打包时拷贝依赖jar文件到指定目录

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_23315711/article/details/82425916

在maven工程的pom文件中添加下面配置:

   <build>
		<plugins>
			<!-- 将工程依赖的jar包,复制至target/lib目录下进行管理,方便已生成jar的工程进行引用。 -->
			<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>
			<!-- 打包jar文件时,配置manifest文件,加入lib包的jar依赖 配置 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<configuration>
					<classesDirectory>target/classes/</classesDirectory>
					<archive>
						<manifest>
							<!-- 主函数的入口 -->
							<mainClass>com.milosun.Main</mainClass>
							<!-- 打包时 MANIFEST.MF文件不记录的时间戳版本 -->
							<useUniqueVersions>false</useUniqueVersions>
							<addClasspath>true</addClasspath>
							<classpathPrefix>lib/</classpathPrefix>
						</manifest>
						<manifestEntries>
							<Class-Path>.</Class-Path>
						</manifestEntries>
					</archive>
				</configuration>
			</plugin>
			</plugins>
	</build>

进入工程目录通过maven指令:

mvn package

这个时候再去工程target目录下会多出一个lib(因为我在pom中配置的是lib,可自定义。)文件夹,然后里面就是工程所以来的所有jar。

拓展:

${basedir}:项目的根目录。

${project.build.directory}:项目根目录下的target目录。即:${basedir}/tartget。

猜你喜欢

转载自blog.csdn.net/qq_23315711/article/details/82425916