War包

File->Project Structure->Artifacts->Web Application:Archive
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题

Name:设置war包的名字;
Output directory:war包打包完成后输出的位置;
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题

选择Directory Content
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题
选择web项目的根目录
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题效果如下
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题
创建两个文件夹 WEB-INF 及其子目录 classes
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题
选中classes,选择Module Output,选择OK
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题
选择fix,会自动创建lib目录
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题
最后效果如下
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题

Build->Build Articrafts,进行打包
IDEA将Java Web项目打成war包,解决jdk11不带jre的问题

关于在Tomcat上部署

jdk11之后,目录下没有了jre,所以我们要现在官网去安装jre。

网上说用jlink命令也可以安装,经实测 jlink安装的jre是无效的,不完整,任然会报错

将war包放在webapps目录下,conf/server.xml中的 unpackWARs记得设置为true,这样会自动解开war包。

默认情况下,web项目的根路径是war包的名字即www.localhost.com/war包名字/

如果不想使用默认的war包名字作为根路径,可以配置元素中的path属性,至于配置Context元素的方法有很多种

学会在tomcat的根目录/logs/catalina.out下查看报错来定位问题

相关文章: