【学习笔记】struts2项目部署出错解决思路,非程序错误

Type Exception Report

Message Illegal char <:> at index 3: jar:file:\D:\jee-oxygen\eclipse-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp4\wtpwebapps\UpDownloadFile_Struts2\WEB-INF\lib\struts2-core-2.3.34.jar

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

java.nio.file.InvalidPathException: Illegal char <:> at index 3: jar:file:\D:\jee-oxygen\eclipse-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp4\wtpwebapps\UpDownloadFile_Struts2\WEB-INF\lib\struts2-core-2.3.34.jar
	java.base/sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
	java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
	java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
	java.base/sun.nio.fs.WindowsPath.parse(WindowsPath.java:92)
	java.base/sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:229)
	java.base/java.io.File.toPath(File.java:2300)
	java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:951)
	java.base/java.util.zip.ZipFile.<init>(ZipFile.java:216)
	java.base/java.util.zip.ZipFile.<init>(ZipFile.java:148)
	java.base/java.util.jar.JarFile.<init>(JarFile.java:324)
	java.base/java.util.jar.JarFile.<init>(JarFile.java:295)
	java.base/java.util.jar.JarFile.<init>(JarFile.java:234)
	com.opensymphony.xwork2.util.fs.JarEntryRevision.needsReloading(JarEntryRevision.java:76)
	com.opensymphony.xwork2.util.fs.DefaultFileManager.fileNeedsReloading(DefaultFileManager.java:66)
	com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.needsReload(XmlConfigurationProvider.java:397)
	org.apache.struts2.config.StrutsXmlConfigurationProvider.needsReload(StrutsXmlConfigurationProvider.java:169)
	com.opensymphony.xwork2.config.ConfigurationManager.needReloadContainerProviders(ConfigurationManager.java:215)
	com.opensymphony.xwork2.config.ConfigurationManager.conditionalReload(ConfigurationManager.java:179)
	com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:73)
	org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:978)
	org.apache.struts2.dispatcher.ng.PrepareOperations.createActionContext(PrepareOperations.java:81)
	org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:89)


环境 jre1.9 ,Tomcat9.0 ,struts2.3


一.检查是不是struts包冲突,或者配置有问题

    解决办法:官网下载struts-2.3.34-all.zip,解压

    打开里面的【struts-2.3.34】-->【apps】-->【struts2-blank.war】-->【WEB-INF】-->【lib】, 复制粘贴到项目的【WebContent】-->【lib】下 (先清空原先的jar包,buildPath里面的引用也要删除),然后在add to buildPath;

    复制空项目里面的“web.xml”到本项目的【WEB-INF】下,删除掉不必要的内容,只保留filter

    复制空项目中的“struts.xml”到本项目中src下,修改删除掉不必要的内容

二.删除Tomcat和eclipse中的缓存

    解决方法:

    1.先remove掉所有发布的项目,然后清除所有Tomcat的缓存,先执行clean,再执行clean Tomcat   work directory


    2.清除的eclipse缓存,【Project】-->【clean...】

三.如果以上不行,还有一种可能,jre版本不匹配,修改项目的jre版本,jre1.9修改为jdk1.8

---------------------------------------------我是分割线----------------------------------------------------

坑爹啊,后来我再一次遇到这个问题,然后问度娘居然搜到自己的答案-_-||,还TM是第一条。。。。

画重点:方法三亲测有效,前面2个都没用的。

具体方法如下:

window -> preferences -> java -> Installed JREs -> 选择jdk8或别的版本(没有自己安装) -> Apply -> Apply and Close 

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值