一、添加新配置
选Tomcat服务器 本地
二、详细配置
1.名称随便取一个
2.应用程序服务器选自己的Tomcat
3.URL确定好
4.JRE选个自己常用的
5.HTTP端口不重复就行
6.执行前添加新任务:编译Artifiacts(这个要等后面项目结构配置完才能选)
部署里面把工件给加上(等后面项目结构的工件配置完)
三、设置项目结构
点右上角这个设置图标,选项目结构
1.项目
项目SDK选自己常用的
2.模块
添加一个Web
Web模块部署描述符路径定位到web.xml
资源目录定位到webapp(含有web.xml的那个文件夹,不一定是这个名字)
3.库
库添加个Java,把Tomcat的lib文件夹下面的jsp-api.jar和servlet-api.jar加进来,其他的按需引
4.Facet
还是那个Web,一样的
5.工件
工件:选Web应用程序:展开型 基于模块
四、碰到的问题
报错:Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application due to a StackOverflowError. Possible root causes include a too low setting for -Xss and illegal cyclic inheritance dependencies. The class hierarchy being processed was [org.bouncycastle.asn1.ASN1EncodableVector->org.bouncycastle.asn1.DEREncodableVector->org.bouncycastle.asn1.ASN1EncodableVector]
at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:2110)
原因:报错原因为Java虚拟机栈溢出问题;而导致栈溢出的根本原因是由于包含(ASN1EncodableVector)jar包冲突,这种情况是有两个jar都含有上述相同的类名,且继承关系刚好相反,故造成tomcat启动的环问题。
解决方法:搜ASN1EncodableVector相关jar包,找到重复的jar包,把老版本的jar包删掉