Ubuntu20.04.LTS:springboot项目代码打包部署到服务器,启动和停止

要有root权限!!!不然可能会bulid不成功

项目打包(jar)

  1. Maven默认会将项目打成jar包,也可以在pom.xml文件中指定打包方式。配置示例如下:
<groupId>com.codewater</groupId>

<artifactId>spring-boot-package</artifactId>

<version>1.0.0</version>

<name>spring-boot-package</name>

<!--指定打包方式,其实可以不写,因为默认的就是jar包-->

<packaging>jar</packaging>
  1. 项目根目录下,在控制台执行如下命令:
mvn clean package -Dmaven.test.skip=true

mvn clean package其实是两条命令,mvn clean是清除项目target目录下的文件,mvn package打包命令。两个命令可以一起执行。
-Dmaven.test.skip=true:排除测试代码后进行打包。

命令执行完成后,jar包会生成到target目录下,命名一般是“项目名+版本号.jar”的形式。如下图所示。

  1. 把这个jar包传到服务器,我用的xftp,直接拖。
  2. 首先添加可执行权限,chmod a+x jar包名a+x意思是给所有用户添加可执行权限。
  3. 执行
# 在当前项目的目录下执行
java -jar ./XXX项目-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod  # prod指定生产环境
  1. 上面那个命令有个问题,窗口关掉之后程序就会停止,所以所用下面这个让程序一直在后台运行
nohup java -jar ./XXX项目-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod &

jpsnetstat -ntlp 也能查看到java程序的运行

Maven打包生成

  1. 直接从远程拉取到代码之后,用mvn package -DskipTests执行构建项目!
    (这个命令也是忽略测试类)
  2. 然后就是进入到target目录,这里也要把jar包添加可执行权限,上面有。然后就是一样的操作了

停止程序运行

其实就是查询到进程的pid,然后kill掉。

  1. 查询xxx1的进程号,
ps -ef | grep xxx1 # 这个信息多

ps -C 查询的程序-o pid  # 这个查出来的结果只有进程pid

  1. 再通过kill -s 9 ${pid} 进行杀死

更加详细的部署参考
详细的启动和停止参考

posted @ 2022-05-24 17:50  CodeWater  阅读(521)  评论(0)    收藏  举报