在eclipse中打包、在腾讯云服务器上发布springboot的maven项目
写在前面:最近写毕业设计文档,其中包括发布部署应用程序及发布配置说明,于是把写在毕业设计项目错误合集中的这一部分单独提出来,希望能帮助到大家。
第一步:先购买腾讯云服务器
step1:你可以选择学生优惠套餐https://cloud.tencent.com/act/campus。但是我的过期了没法续租,所以选择按量计费:
产品-->云服务器-->立即选购-->选择按量计费、所属地区、默认网络
step2:选择镜像【我是共享了别人的镜像,已经配置好了java环境、jdk、tomcat、navicat for mysql等】
step3:后面的就是默认选择了
第二步:在eclipse里面打包springboot的maven项目
注意一点---->springboot项目是自带tomcat的,所以在、pom.xml中要添加一些配置信息。
pom.xml:
首先在pom文件顶端,将war改为用jar方式打包,<packaging>jar</packaging>
<build> <plugins> <!-- 添加的 --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- 添加的 --> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.2</version> <configuration> <archive> <manifest> <!-- 我运行这个jar所运行的主类 --> <mainClass>com.tyj.Maintest</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef> <!-- 必须是这样写 --> jar-with-dependencies </descriptorRef> </descriptorRefs> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments> <fork>true</fork><!-- 如果没有该项配置,可能devtools不会起作用 --> </configuration> </plugin> </plugins> </build>
PS:建议在变更项目文件时,先备份。可以在eclipse先打包根据报错信息,修改重复项或冲突项。
第三步:打包
进入cmd模式【其实也可以直接在eclipse中打包,但是一定要记得要通过maven build配置一下】,首先进入项目的pom的目录下,我的是 E:\java\etsqym04
然后输入 mvn package进行打包,第一次打包的话会download一些东西,所以耐心等待
完成之后,我们可以在项目的target目录下看见
把它拷贝到服务器的tomcat的webapps目录下,我的是 C:\Program Files\Tomcat 8.0\webapps【springboot项目完全不用tomcat,放在别的目录也行】
springboot项目是自带tomcat的,所以只要有jdk环境,就能跑起来这个项目,只是需要先cd转到该jar包的目录下
PS:建议每次打包后,在本地运行jar包,用浏览器检验是否打包成功
第四步:数据信息
将本地数据库中的信息全部导出、转储在服务器上的navicat for mysql上
注意application.properties中连接数据库的信息,是我们远程服务器上的数据库信息,我遇到了一个错误:
Access denied for user 'root'@'localhost' (using password: YES) ,而且在本地mysql测试连接也显示该错误
后来在已经让root用户可以被所有机器(ip)访问的情况下(授权完成),发现是密码错误,注意:using password: YES 不是代表密码正确,具体看Yes or NO情况
第四步:访问
在服务器上进入cmd模式,进入拷贝jar包的目录,我的是 cd C:\Program Files\Tomcat 8.0\webapps【运行springboot项目不需要tomcat,完全可以放在别的目录】
运行jar包,java -jar etsqym04-0.0.1-SNAPSHOT.jar 【etsqym04-0.0.1-SNAPSHOT是我的jar包名】
在本地浏览器上输入 http://152.136.152.182:8010/ulogin_before 【152.136.152.182是我服务器的IP,8010是我在application.properties中配置server.port端口号,你也可以配置别的】
B【如果是在虚拟机上跑,运行起来后,直接在虚拟机中浏览器输入localhost:8010/user_loginbefore就行】