1. 程式人生 > 其它 >SpringBoot專案分離打包部署至阿里雲centos7.3掛起後臺執行,配置檔案,lib,jar包分離

SpringBoot專案分離打包部署至阿里雲centos7.3掛起後臺執行,配置檔案,lib,jar包分離

技術標籤: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.阿里雲開放你配置檔案所使用的埠就行了