如何使用maven-dependency-plugin生成包含system范围的可执行jar
时间: 2023-03-24 09:01:21 浏览: 361
用Maven打成可执行jar,包含maven依赖,本地依赖的操作
maven-dependency-plugin 是 Maven 中的一个插件,它可以用于管理项目中的依赖关系,并可以通过它来生成项目中的可执行 JAR 文件。
要将项目的依赖项打包到可执行 JAR 文件中,您可以使用 maven-dependency-plugin 中的一个名为 copy-dependencies 的目标。该目标将依赖项复制到指定的目录中,然后您可以使用 Maven Assembly 插件将这些依赖项打包到可执行 JAR 文件中。
下面是使用 Maven Dependency Plugin 生成包含依赖项的可执行 JAR 的步骤:
1. 在项目的 pom.xml 文件中添加以下插件配置:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/libs</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
此配置将 maven-dependency-plugin 添加到项目中,并在打包(package)阶段执行 copy-dependencies 目标。它将复制所有依赖项到 ${project.build.directory}/libs 目录中。
2. 运行以下命令打包项目:
```
mvn package
```
此命令将生成一个包含依赖项的可执行 JAR 文件。
3. 如果您使用的是 Maven Assembly 插件,则可以使用以下配置将依赖项打包到可执行 JAR 文件中:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<archive>
<manifest>
<mainClass>com.example.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
此配置将 Maven Assembly 插件添加到项目中,并将生成的 JAR 文件配置为包含依赖项的 JAR 文件。在打包阶段执行该插件的 single 目标时,它将生成带有依赖项的 JAR 文件。
希望这可以帮助您生成包含依赖项的可执行 JAR 文件。
阅读全文