在网上找了很久,发现很多方法是错误的,有的连web.xml文件以及classes文件夹、lib文件夹都没生成。同时在部署过程中还出现本地调试正常,但是放到服务器上就不能访问的问题。因此有很多注意事项,写下这篇博客以作记录。
Idea打包web项目为war包(详细图文步骤)
- 打开Projec Structure
在war中导入的包最后和本地的包是一样的,所以如果出现包依赖的冲突,那么就清理一下本地的包,比如我之前就是在本地添加了重复的tomcat依赖包,导致在本地可以运行,上传到服务器上就不行了
-
开始生成war包
创建完成之后就可以在out目录下看到war包了
将war部署到服务器上
将war包上传到服务器tomcat的webapps目录下
因为我是放到了另一个端口,所以我这里是放到了webapps1目录下,如果你只有这一个web程序,那么直接放到webapps下就行了,如果你有多个web程序要放到同一个tomcat服务器中,那么可以参考这篇文章:一个 tomcat 下如何部署多个项目?附详细步骤
重启tomcat
# 在tomcat的 bin 目录下操作
./shutdown.sh # 关闭tomcat
ps -ef | grep java # 查看是否关闭成功
./start.sh # 开启tomcat
tomcat关闭的时候
tomcat开启的时候
这样就可以通过ip:8080/项目名来进行访问了
ps:如果ip:8080/项目名可以访问成功,但是访问具体的服务失败时,可能是因为你本地的jdk版本和服务器的jdk版本不同,是你的jdk版本高于服务器jdk版本,那么就不用重新安装jdk,因为jdk是向下兼容的,只需要在idea中设置编译版本就行了