将jar包部署到云服务器上面
在项目中直接双击点击maven里面的package
当控制台输出创建成功以后找到target目录下面打好的jar包
然后找到jar包所在的文件目录,将该jar包放到服务器里面的apache-tomcat-8.5.82目录里面的webapps目录里面
打开安全组开放访问端口
服务器里面建立数据库
注意在建立数据库的时候可能会遇到建表不成功的情况,而这情况多半是由字段和字段的默认值引起的,在这里介绍一篇博客:
https://blog.csdn.net/weixin_46934884/article/details/105603245
还有要注意的是如果项目中的用户密码是加密的,那么在插入用户表中的密码字段时,也要插入加密以后的密码,不然到后面访问网站的时候访问不了。
运行项目
一次性运行
命令:
java -jar xxx.jar
然后直接去浏览器中输入服务器的地址+端口号+xx.html
如果你输入java -jar xxx.jar命令以后,在我箭头的那个位置报了一个错误:
Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Failed to start bean 'webServerStartStop'; nested exception is org.springframework.boot.web.server.PortInUseException: Port 8080 is already in use
他表示当前项目的这个端口已经被占用,那么这个时候我们就要找到占用该端口的进程:
netstat -anp | grep "端口号"
找到listen后面的端口,然后关闭该端口就行了:
kill -9 "端口号"
然后再去执行项目就可以了,再说一下可能你在运行项目的时候控制台报这样一个错误:
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/atguigu/mr/wordcount/WcDriver has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
他表示服务器上的jdk版本与Windows的jdk版本不一致,解决这个问题只需要在pom.xml文件中输入下面的配置就可以了:
<!--JDK配置 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<spring.version>4.0.0.RELEASE</spring.version>
</properties>
记得将你之前的<properties>删掉
一次性运行的缺点是在关闭终端或者退出运行项目以后,服务器就不能访问了。
永久访问
命令:
nohup java -jar xxx.jar &
&:指在后台运行;
nohup:不挂断的运行;
他执行以后会生成一个nohup.out的文件,该文件是项目执行的日志文件,在该文件中可以查看程序的执行情况(用vim命令打开日志文件)。