springboot项目创建打包部署
1.项目创建
1.开发工具:STS 3.9.4
2.File---->New---->Project---->Spring Boot---->Spring Starter Project
3.填写项目信息
4.选择版本和组件,按需选择
5.查看pom.xml文件
6.编写测试类
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@RequestMapping("/hello")
public String hello() {
return "HelloWorld!";
}
}
7.启动springboot项目
8.本地访问http://localhost:8080/hello测试
2.打jar包及部署
1.打开pom.xml文件,添加代码,设置打包方式为jar包
<packaging>jar</packaging>
2.侧边栏项目名称上鼠标右键---->Run As---->Maven clean---->Maven install;当控制台出现Build Success,说明项目打包成功,此时,在target目录下会出现helloworld-0.0.1-SNAPSHOT.jar
3.jdk版本查看
root@192.168.0.109:~# java -version
bash: java: 未找到命令
说明还未安装jdk
4.使用yum搜索jdk版本
yum search java|grep jdk
5.安装jdk8
yum install -y java-1.8.0-openjdk.x86_64
6.将打包好的jar包上传到linux(我使用的是SmarTTY工具)
点击左上角SCP---->upload a file
我将jar包上传到了/tmp目录下
7.切换到/tmp目录下,运行命令
java -jar helloworld-0.0.1-SNAPSHOT.jar
项目启动正常后,在本机访问测试正常
注意:若项目启动正常,在本机无法访问,可以关闭linux防火墙
systemctl stop firewalld.service
3.打war包及部署
1.修改启动类
主启动类继承SpringBootServletInitializer,并重写configure方法;
@SpringBootApplication
public class HelloworldApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(HelloworldApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(HelloworldApplication.class, args);
}
}
2.pom.xml中设置打包方式为war包
<packaging>war</packaging>
3.war包需要放到tomcat容器中运行,所以我们需要去掉springboot内置tomcat,引入tomcat starter
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
4.侧边栏项目名称上鼠标右键---->Run As---->Maven clean---->Maven install;当控制台出现Build Success,说明项目打包成功,此时,在target目录下会出现helloworld-0.0.1-SNAPSHOT.war
5.查看服务器是否安装tomcat
root@192.168.0.109:~# systemctl status tomcat.service
Unit tomcat.service could not be found.
说明还没有安装tomcat
6.在 https://tomcat.apache.org/ 找到对应版本的tomcat,选择tar.gz,鼠标右键复制链接,然后使用wget命令下载
wget https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.60/bin/apache-tomcat-8.5.60.tar.gz
7.启动tomcat
root@192.168.0.109:/# cd /root
root@192.168.0.109:~# ll
总用量 10248
-rw-------. 1 root root 1181 11月 19 09:16 anaconda-ks.cfg
drwxr-xr-x. 9 root root 220 11月 24 10:03 apache-tomcat-8.5.60
-rw-r--r--. 1 root root 10488933 11月 12 12:53 apache-tomcat-8.5.60.tar.gz
root@192.168.0.109:~# cd apache-tomcat-8.5.60/bin/
root@192.168.0.109:~/apache-tomcat-8.5.60/bin# ./startup.sh
8.查看tomcat状态
ps -ef | grep 'tomcat'
# 本地可访问,看看能否打开tomcat首页。若无法访问,关闭防火墙
systemctl stop firewalld.service
9.将war包放入tomcat的webapps路径下,重启tomcat
# 为了方便,我们修改了war包名称为hellworld.war
mv helloworld-0.0.1-SNAPSHOT.war hellworld.war
重启tomcat以后,在webapps下会根据war包生成一个hellworld文件夹,在本地通过ip+port+filename+API名称访问