在IDEA中,将Maven项目工程单独打包,其对应的依赖包导出到指定文件夹中保存
前言
Maven项目依赖包导出:
目的:在IDEA中,将Maven项目工程单独打包,其对应的依赖包导出到文件夹中保存
提示:以下是本篇文章正文内容,文中记载了几种方式,下面案例可供参考
一、核心命令
Maven命令dependency:copy-dependencies
是最核心的内容
其中心思想就是,将项目中的dependencys
通过copy
的方式,将依赖复制到所需的目录下
二、实现方式
1.直接使用Maven命令
- 点击Maven的
Execute Maven Goal
按钮
- 输入命令
dependency:copy-dependencies -DoutputDirectory=java/lib
回车
- 等待执行结束,返回
BUILD SUCCESS
信息
- 在项目文件夹下生成
java/lib
文件夹,包含了pom.xml
中所有依赖
2.创建Maven命令的快捷键
- 随便选中一个Maven的Lifecycle
- 单击右键,选择
Modify Run Configuration...
- 输入
Name
和Command line
copy-dependency
dependency:copy-dependencies -DoutputDirectory=java/lib
- 点击OK,在Maven工具行出现一个
Run Configurations
和子项copy-dependency
- 双击
copy-dependency
,执行成功在项目文件夹下生成java/lib
文件夹,包含了pom.xml
中所有依赖
- 执行成功
- 输出到
java/lib
下
3.通过pom.xml
实现
- 在
pom.xml
中添加以下代码
代码如下(示例):
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<!--没有这三行代码,将会直接打到target/dependency-->
<configuration>
<outputDirectory>java/libs</outputDirectory>
</configuration>
<!-没有这三行代码,将会直接打到target/dependency-->
</execution>
</executions>
</plugin>
</plugins>
</build>
- 去掉指定输出目录的三行代码,执行Maven的
package
命令
代码如下(示例):
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
- 执行成功
- 将依赖输出到
target/dependency
下
- 保留三行代码,执行Maven的
package
命令,将依赖输出到java/lib
下
- 执行成功
- 依赖输出到
java/lib
下
总结
- 就是利用了Maven的copy-dependencys命令实现的依赖包的复制,只是实现的方式不同
- 第一种需要每次去粘贴运行,比较麻烦,但是胜在简单
- 第二种和第三种,配置稍显麻烦,但是胜在配置一次可以重复用