【LSP】SpringBoot2.x入门:应用打包与启动
这篇文章分析一个偏向于运维方面的内容:SpringBoot应用的打包与启动,分别会分析嵌入式Servlet容器和非嵌入式Servlet容器下的应用打包与启动,Servlet容器以比较常用的Tomcat为例。http://cdn.u1.huluxia.com/g4/M01/59/59/rBAAdl9to2uASItuAACt4WdlvYs347.jpg
嵌入式Tomcat的打包与启动#
嵌入式Tomcat由spring-boot-starter-web这个starter自带,因此不需要改动关于Servlet容器的依赖。新建一个启动类club.throwable.ch4.Ch4Application:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Ch4Application {
public static void main(String[] args) {
SpringApplication.run(Ch4Application.class, args);
}
}
添加一个主配置文件application.properties:
server.port=9094
spring.application.name=ch4-embedded-tomcat-deploy
然后在项目的pom.xml引入Maven插件spring-boot-maven-plugin:
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
然后使用命令mvn clean compile package(mvn clean、mvn compile和mvn package的组合命令)打包即可:http://cdn.u1.huluxia.com/g4/M01/57/11/rBAAdl9rbDmAXBSdAAFU71SjUWE213.png
如果编译和打包命令执行成功的话,控制台输出BUILD SUCCESS:http://cdn.u1.huluxia.com/g4/M01/57/11/rBAAdl9rbDqAKacrAAGpYcXvJbw803.png
同时项目的target目录下(除了一些编译出来的class文件)会多出了一个Jar包和一个x.jar.original文件:
http://cdn.u1.huluxia.com/g4/M01/57/11/rBAAdl9rbDqAGxJXAAA3G9AzJAM180.png
而这个Jar文件正是可运行的文件,可以通过命令(确保已经安装JDK并且把JRE的bin目录添加到系统的Path中)运行:
java -jar ch4-embedded-tomcat-deploy.jar
控制台输出如下:
http://cdn.u1.huluxia.com/g4/M01/57/11/rBAAdl9rbDqAKq4PAAGNSMlW0pc649.png
一般情况下Jar的执行命令是:
java -jar 应用名.jar
例如:
java -Xms1g -Xmx2g -jar ch4-embedded-tomcat-deploy.jar --spring.profiles.active=default
上面的命令会导致应用挂起在控制台,只要退出控制台,应用就会被Shutdown。如果在Linux下,可以使用nohup(其实就是no hang up的缩写)命令不挂断地运行Jar应用,例如:
nohup java -Xms1g -Xmx2g -jar ch4-embedded 为毛老子总也抢不到沙发?!! 没人回帖。。。我来个吧 看起来不错 :lol
页:
[1]