一尘不染

Java 在Maven的jar中包含依赖项

java

有没有一种方法可以强制maven(2.0.9)将所有依赖项包含在单个jar文件中?

我有一个构建到单个jar文件中的项目。我希望将依赖项中的类也复制到jar中。

更新:我知道我不能只在jar文件中包含jar文件。我正在寻找一种方法来解压缩指定为依赖项的jar,并将类文件打包到我的jar中。


阅读 437

收藏
2020-02-27

共1个答案

一尘不染

你可以使用带有“ jar-with-dependencies”描述符的maven-assembly插件来执行此操作。这是我们pom.xml之一的相关块,它可以完成此任务:

  <build>
    <plugins>
      <!-- any other plugins -->
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
        </configuration>
      </plugin>
    </plugins>
  </build>
2020-02-27