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

本文针对Struts2在Eclipse中出现的Illegal char异常进行了详细分析,并提供了有效的解决方案,包括检查包冲突、清理缓存及调整JRE版本。

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 

POI(一般作为Point of Interest的缩写,也有Point of Information的说法),通常称作兴趣点,泛指互联网电子地图中的点类数据,基本包含名称、地址、坐标、类别四个属性;随着互联网电子地图服务与LBS应用的普及,POI无论从概念范畴,还是从信息纵深都有了长足发展,互联网各个风口或火山口都和POI有一定关系,如O2O、电商、社交、互联网金融、共享经济等。在国内互联网电子地图POI数据在数据量、覆盖面、准确性、更新频率方面都是领先的,基本能够满足不同行业GIS应用场景对基础类POI数据的需求。以高德地图为例,其官方对外公布的POI数据有6000多万个。## 一、全国范围20122014、2016、2018、2020、2022年常用POI数据集数据是全国范围20122014、2016、2018、2020、2022年常用POI数据集,主要包括:包括餐饮、风景名胜、公共设施、公司企业、停车场、收费站、厕所、服务器等等。【资源信息】中文名称: 全国范围POI数据集显示间: 20122014、2016、2018、2020、2022数据来源: 高德地图、百度地图、网络搜集等 数据格式:矢量点数据(shp)数据坐标:WGS_1984## 二、全国各城市POI兴趣点数据数据年份:2012-2022年数据范围:每年样本量6000w-9000wPOI类别:150+POI兴趣点类别原始来源:2012-2017年来源于百度,2018-2022来源于高德数据指标:POI名称,经度,纬度,省份,城市,区域(各年指标有所差别)
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值