前言
很早之前就完成了一个项目,但是一直没有部署到阿里云,最近要准备简历面试啦,今天花了一天时间内终于完成了springboot项目部署到阿里云。其中踩了无数坑,记录下来分享给大家。
1. 打成jar包
- 刚开始的时候,在控制台上使用命令:
E:\code\syau_web_1>mvn clean package -Dmaven.test.skip=true
结果jar包没打成,报了很多错
错误提示大概这样:
Could not transfer artifact org.springframework:spring-tx:jar:3.2.3.RELEASE
- 在配置完
在打成jar包之后,运行
java -jar 名称.jar
结果访问的时候又出错了
由于我的项目里包含jsp界面,结果jsp界面访问不了,404找不到路径。
解决方法:
我查了很多资料,springboot对jsp的支持并不好,spring-boot-maven-plugin必须是1.4.2版本
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!--版本必须是这个-->
<version>1.4.2.RELEASE</version>
<configuration>
<!--使devtools能够起作用-->
<fork>true</fork>
</configuration>
</plugin>
</plugins>
- 在配置完之后,打成jar包,结果发现又报错了。
- 在部署,又报错,数据库访问不了。
错误提示:
找不到数据库,大家都知道。
<finalName>syausell</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!--版本必须是这个-->
<version>1.4.2.RELEASE</version>
<configuration>
<!--使devtools能够起作用-->
<fork>true</fork>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/**</include>
</includes>
</resource>
<resource>
<directory>src/main/webApp</directory>
<targetPath>META-INF/resources</targetPath>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.yml</include>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
’```
- 这几个错误解决了,发现我的resource下的freemarker模板访问不了了,真是惨。
错误提示:
找不到freemarker的访问路径
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/**</include>
<!--<include>**/*.properties</include>-->
<!--<include>**/*.xml</include>-->
</includes>
<filtering>false</filtering>
</resource>
终于能把项目打成jar包了,并且所有界面都能访问了。
整体目录结构:
2.发布项目到阿里云
这个挺简单的,把jar包放入阿里云linux服务器上,
让他在后台运行:
nohup java -jar -Dserver.port=8080 sell.jar &
如果要退出进程:
jobs
kill %进程编号
发布后项目项目地址:
http://www.yiyufei.top/login
总结
这次部署可真的是费劲,几乎每个坑都被我踩遍了,希望大家都能部署上自己的服务器,加油。
你为什么会近视?为了看淡世间的万物,而模糊了双眼。