SpringBoot專案分離打包部署至阿里雲centos7.3掛起後臺執行,配置檔案,lib,jar包分離
阿新 • • 發佈:2021-01-29
技術標籤:Springboot
問題:
springboot單體專案打包上線,體積大,在特定公網下,傳輸速度較慢。採用分離打包,並分離配置檔案,減緩以上問題。
步驟:
1. pom中匯入maneb外掛,並修改相關內容,打包
2. 在伺服器上原始jar包目錄下建立相應的config目錄,確保lib config,jar包在同一個目錄下
3. 伺服器上掛起執行
4. 阿里雲開放埠
具體步驟
1. pom中匯入以下內容,注意修改主函式座標-指定入口類,右鍵入口類copy path去掉.java
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <!-- MANIFEST.MF 中 Class-Path 加入字首 --> <classpathPrefix>lib/</classpathPrefix> <!-- jar包不包含唯一版本標識 --> <useUniqueVersions>false</useUniqueVersions> <!-- 指定入口類 --> <mainClass>edu/platform/PlatformApplication</mainClass> </manifest> </archive> <outputDirectory>${project.build.directory}</outputDirectory> </configuration> </plugin> <!-- 拷貝依賴 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-dependencies</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> <overWriteReleases>true</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> </configuration> </execution> </executions> </plugin> </plugins> </build>
獲得如下結構
2.將上面的lib 和 jar放在伺服器你想部署的目錄下並建立一個空的資料夾config
開啟你的jar包,複製裡面配置檔案到伺服器上的config目錄下:
3.執行命令後臺啟動專案
# nohup -後臺啟動 # --spring.config.location=xxx 使用指定配置目錄中的配置 # >xxx.txt & 將控制檯輸出日誌至指定目錄檔案 nohup java -jar /home/project/xxx.jar --spring.config.location=/home/project/config/ >/home/project/log.txt &
spring中預設配置檔案使用是有優先順序的,優先順序最高的也就是預設使用在jar同一級config中的配置檔案
nohup java -jar /home/project/xxx.jar >/home/project/xxx.txt &
4.阿里雲開放你配置檔案所使用的埠就行了