SpringBoot如何进行项目打包部署

SpringBoot如何进行项目打包部署,第1张

1. springboot的打包方式有很多种。有打成war的,有打成jar的,也有直接提交到github

首先需要在application.properties当中配渣陵置端口

server.port=8080

2. marven的配置文咐兄件

<?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>

<groupId>com.weixin</groupId>

<artifactId>smallsystem</artifactId>

<version>0.0.1-SNAPSHOT</version>

<packaging>jar</packaging>

<name>smallsystem</name>

<description>smallsystem</description>

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.0.0.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-starter-test</artifactId>

<scope>test</scope>

</dependency>

<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger2</artifactId>

<version>2.2.2</version>

</dependency>

<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger-ui</artifactId>

<version>2.2.2</version>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-devtools</artifactId>

<optional>true</optional>

</dependency>

</dependencies>

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

<configuration>

<mainClass>com.weixin.SmallsystemApplication</mainClass>

</configuration>

</plugin>

</plugins>

</build>

</project>

在启动类当中加上extends SpringBootServletInitializer并如简戚重写configure方法,这是为了打包springboot项目用的。

@SpringBootApplication

public class SmallsystemApplication extends SpringBootServletInitializer{

public static void main(String[] args) {

SpringApplication.run(SmallsystemApplication.class, args)

}

@Override//为了打包springboot项目

protected SpringApplicationBuilder configure(

SpringApplicationBuilder builder) {

return builder.sources(this.getClass())

}

}

然后按照顺序运行mvn clean再mvn install

jar方式

Gradle 的 buildJar

执行完后会下工程的build/libs下生成可以运行的jar文件

1、windows

更好的方式是写一个bat文件,双击就可以运行了

也可以做成windows服务,开机启动

可以使用第三方工具做成exe

2、linux

将jar程序梁念设置成后台运行,并且将标准输出的日志重定向至文件consoleMsg.log。

其中:nohup命令的作用就是让程序在后台运行,不用担心关闭连接进程断掉的问题了

如果使用nohup命令提交作昌升业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件

同理,也可以写一个sh文件

1、耐渣老windows

直接关

2、linux

如果想杀掉运行中的jar程序,查看进程命令为:

将会看到此jar的进程信息

其中30768则为此jar的pid,杀掉命令为

也可以写一个sh文件

项目部署并不是一个单一的jar包就完事,实际上除了jar包还有很多其他文件,比如sql脚本、安装脚本等其他盯册文件,本文要说的就是如何将这些文件统一打包成一个压缩包文件,直接上传linux服务器安装。

一个项目从立项到最终的发布上线往往有在不同的环境运行,比如开发时的开发环境、测试时的测试环境、线上环境等等,频繁的变动势必会出错,较好的解决方式便是配置多个环境,使用哪个环境便开启哪个环境,避免重复的改动配置。

可以通过两种方式配置:

application.yml配置

mvn中profiles配置

节点说明:

有这样一个场景,如何把配置文件、第三方等依赖包(不想放到工程jar)、安装文件等文件压缩成一个zip包,方便上传到Linux?

此时便可通过maven-jar-plugin和maven-assembly-plugin来完成场景中的功能

maven-jar-plugin是一个maven打包(jar)插件,它的主要作用是设定MAINFEST.MF文件中的参数,比如指定运行的Main class、将依赖的jar包加入classpath中等。

注意:

配置详情

最小化配置

注意:在这里我们使用最小化配置即可

值得注意的地方如下几点滚兆:

重点节点介绍大则租:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12549336.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存