如何將springboot工程打包上傳至Linux

2020-08-11 16:29:53

如果在windows上寫的程式碼放在linux上需要進行格式的轉換,否則Linux上會執行出錯。解決辦法:
sed -i 's/\r//g' 指令碼名

這樣就可以將指令碼的格式轉換爲Linux中的格式

將本地springboot部署到Linux上的步驟:
1、將工程打成jar包,打包的方式爲在maven管理介面中的packege進行打包,在打包前需進行在pom檔案中新增外掛

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>1.3.3.RELEASE</version>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
    <finalName>demo</finalName>
</build>

如果打包完成後,可進行驗證,驗證方式爲:
進入dos介面,進入打包後生成的jar包的位置, 輸入指令  :java -jar +包名稱。Jar  如果可以啓動起來,說明打包後的jar包是沒問題的

  1. 上傳至linux,,將jar包上傳至linux上,放到任意路徑下
  2. 在linux上可以執行 java -jar 包.jar  產後如果輸出spring boot的啓動日誌,則表明啓動成功
  3. 第三步這種情況只能一直掛着服務但是你沒辦法在操作別的,因此寫一個shell指令碼,讓服務一直啓動着
  4. Shell指令碼如下

 

RUN_NAME="demo.jar"

 

#jar包位置(根據自己的情況,這是我xxx.jar包存放目錄)和 執行日誌輸出位置log

JAVA_OPTS=/mci/eai/work/wangyl/demo.jar

LOG_OPTS=/usr/local/java/testJar/thymeleaf-out.log

 

#開始方法

start() {

        nohup java -jar $JAVA_OPTS >$LOG_OPTS &

        echo "$RUN_NAME started success."

}

 

#結束方法

stop() {

        echo "stopping $RUN_NAME ..."

        kill -9 `ps -ef|grep $JAVA_OPTS|grep -v grep|grep -v stop|awk '{print $2}'`

}

 

case "$1" in

        start)

            start

            ;;

        stop)

            stop

            ;;

        restart)

            stop

            start

            ;;

        *)

                echo "Userage: $0 {start|stop|restart}"

                exit 1

esac