我想把我的项目打包在一个可执行的JAR中,以便发布.

如何让Maven项目将所有依赖项JAR打包到输出JAR中?

推荐答案

<build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <archive>
          <manifest>
            <mainClass>fully.qualified.MainClass</mainClass>
          </manifest>
        </archive>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
      </configuration>
    </plugin>
  </plugins>
</build>

你用它来运行它

mvn clean compile assembly:single

Compile goal should be added before assembly:single or otherwise the code on your own project is not included.

请参阅 comments 中的更多详细信息.


通常,该目标与构建阶段相关联,以便自动执行.这确保了在执行mvn install或执行部署/发布时构建JAR.

<build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <archive>
          <manifest>
            <mainClass>fully.qualified.MainClass</mainClass>
          </manifest>
        </archive>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
      </configuration>
      <executions>
        <execution>
          <id>make-assembly</id> <!-- this is used for inheritance merges -->
          <phase>package</phase> <!-- bind to the packaging phase -->
          <goals>
            <goal>single</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Java相关问答推荐

PostgreSQL货币兑换率查询

int Array Stream System. out. print方法在打印Java8时在末尾添加% sign

Java中如何根据Font.canDisplay方法对字符串进行分段

使用Testcontainers与OpenLiberty Server进行集成测试会抛出SocketException

OpenGL ES 3.0-纹理黑色

我可以在MacOS上使用什么Java函数来在适当的设备上以适当的音量播放适当的alert 声音?

使用While循环打印素数,无法正常工作

错误:不兼容的类型:Double不能转换为Float

如何在盒子的顶部和底部创建两张不同图片(大小相同)的盒子?

STREAMS减少部分结果的问题

如何根据配置动态创建N个bean

将双倍转换为百分比

在权限列表中找不到我的应用程序

在Java中使用StorageReference将数据从Firebase存储添加到数组列表

在单例类上获取Java锁,了解原因

使用同步方法中的新线程调用同步方法

Java泛型方法重载

Eureka客户端无法使用用户/通行证注册到Eureka服务器

Spring Boot Security-每个端点都被403禁止,Spring记录一个BasicErrorController#错误(HttpServlet请求)

URI构造函数错误?