SpringBoot 打成 jar 包釋出到伺服器上
阿新 • • 發佈:2018-11-09
SpringBoot打成的jar包釋出到伺服器上
步驟
1. pom.xml檔案中必須包含:
<packaging>jar</packaging>
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <includeSystemScope>true</includeSystemScope> <fork>true</fork> </configuration> </plugin> </plugins> </build>
2.進入到專案目錄下執行:mvn clean package,會在專案目錄下目標資料夾中生成jar:
> E:\ProjectTest\modp-new:mvn clean package
3.然後,執行的jar包即可:
> E:\ProjectTest\modp-new:target/java -jar modp-0.0.1-SNAPSHOT.jar
或者
> E:\ProjectTest\modp-new\target:java -jar modp-0.0.1-SNAPSHOT.jar
遇到的問題
問題:執行mvn clean package時,本地引入的3個jar包無法打進去。
解決辦法:需要在pom.xml檔案中新增以下依賴:
<dependency> <groupId>com.mathworks.toolbox</groupId> <artifactId>javabuilder</artifactId> <version>1.0.0</version> <scope>system</scope> <systemPath>${project.basedir}/lib/javabuilder.jar</systemPath> </dependency> <dependency> <groupId>com.track</groupId> <artifactId>trackOfMultityObject</artifactId> <version>1.0.0</version> <scope>system</scope> <systemPath>${project.basedir}/lib/trackOfMultityObject.jar</systemPath> </dependency> <dependency> <groupId>com.track</groupId> <artifactId>cutVideoOfCertain</artifactId> <version>1.0.0</version> <scope>system</scope> <systemPath>${project.basedir}/lib/cutVideoOfCertain.jar</systemPath> </dependency>
注意:版本必須配置,的groupId可以隨便寫。
再執行mvn clean package就成功打成jar包了。
完整的pom.xml中
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--modp-0.0.1-SNAPSHOT.jar : jar 包名稱-->
<groupId>com.senglang</groupId>
<artifactId>modp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>modp</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.0.1.RELEASE</version>
</dependency>
<!--引入本地的 jar 包-->
<dependency>
<groupId>com.mathworks.toolbox</groupId>
<artifactId>javabuilder</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/javabuilder.jar</systemPath>
</dependency>
<dependency>
<groupId>com.track</groupId>
<artifactId>trackOfMultityObject</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/trackOfMultityObject.jar</systemPath>
</dependency>
<dependency>
<groupId>com.track</groupId>
<artifactId>cutVideoOfCertain</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/cutVideoOfCertain.jar</systemPath>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
</project>