Lưu ý: Nếu bạn là ứng dụng khởi động vào mùa xuân, hãy đọc phần cuối của câu trả lời
Thêm plugin sau vào của bạn pom.xml
Có thể tìm thấy phiên bản mới nhất tại
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>CHOOSE LATEST VERSION HERE</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
Sau khi định cấu hình trình cắm thêm này, việc chạy mvn package
sẽ tạo ra hai lọ: một lọ chỉ chứa các lớp dự án và một lọ béo thứ hai chứa tất cả các phụ thuộc với hậu tố "-jar-with-dependencies".
nếu bạn muốn classpath
thiết lập chính xác trong thời gian chạy thì hãy thêm plugin sau
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>fully.qualified.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Đối với ứng dụng khởi động mùa xuân, chỉ sử dụng plugin sau (chọn phiên bản thích hợp của nó)
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<mainClass>${start-class}</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>