Jetty报ArrayIndexOutBoundsException:30305的解决方案

部分报错信息如下:

java.lang.ArrayIndexOutOfBoundsException: 30305
        at org.objectweb.asm.ClassReader.readUnsignedShort(Unknown Source) 
        at org.objectweb.asm.ClassReader.<init>(Unknown Source) 
        at org.objectweb.asm.ClassReader.<init>(Unknown Source) 
        at org.objectweb.asm.ClassReader.<init>(Unknown Source)

本人SSH项目是使用maven管理的,之前没有这个问题,一次在引入了Druid之后,莫名报了这个错,虽然不影响使用,但每次启动都报这个错,看着让人闹心,故花了近3个小时时间才把这个问题搞定。经过各种解决方案的验证和排除,最后一句话说明下解决方案:

将Jetty升级到 9.x 版本即可。

maven中相关配置如下:

      <plugin>
					<groupId>org.eclipse.jetty</groupId>
					<artifactId>jetty-maven-plugin</artifactId>
					<version>9.3.2.v20150730</version>
				<configuration>
				<scanIntervalSeconds>5</scanIntervalSeconds>
					<httpConnector>
						<port>8888</port>
					</httpConnector>
					<webAppConfig>
						<contextPath>/${project.artifactId}</contextPath>
					</webAppConfig>
				</configuration>
				</plugin>

我原来使用的jetty版本是8.x,升级到9之后发现相关端口不起作用了。9.x与8.x关于这个的配置是不一样的,我以上的配置是jetty9.x的配置。

本文希望遇到同样问题的朋友做个参考。

时间: 2024-11-10 23:40:52

Jetty报ArrayIndexOutBoundsException:30305的解决方案的相关文章

Linux下jetty报java.lang.OutOfMemoryError: PermGen space及Jetty内存配置调优解决方案

Linux下的jetty报java.lang.OutOfMemoryError: PermGen space及Jetty内存配置调优解决方案问题linux的jetty下发布程序后再启动jetty服务时,发现启动不了,从日志中找到报java.lang.OutOfMemoryError: PermGen space. 原因分析PermGen space,全称是Permanent Generation space,指的是内存3带中的永久区域.当java中间件启动时,会将相关的jar包和.class加载

iOS 百度地图报私有api的解决方案

1.Build Settings-->搜索other linker Flags-->将other linker Flags设置为-objc 2.用2.1.1的版本的百度地图 3.换高德地图 iOS 百度地图报私有api的解决方案

关于Entity Framework中的Attached报错的完美解决方案终极版

之前发表过一篇文章题为<关于Entity Framework中的Attached报错的完美解决方案>,那篇文章确实能解决单个实体在进行更新.删除时Attached的报错,注意我这里说的单个实体,指的是要更新或删除的实体不包含其它实体(比如导航属性就包含其它实体),也就是简单POCO对象:但如果不是呢?那么那篇文章里的方法在一定程度上不起作用了,仍会报错,我开始也想不明白,明明通过IsAttached函数判断要更新的实体并未Attached,但进行Attaching时但仍然报错说有相同Key,开

libc.so.6: version &#39;GLIBC_2.14&#39; not found报错提示的解决方案

线上一台服务器在执行leveldb程序的时候,报错:"libc.so.6: version `GLIBC_2.14' not found". 排查原因及解决方法如下: 1)产生原因是由于Linux系统的glibc版本太低,而软件编译时使用了较高版本的glibc引起的! 查看系统glibc支持的版本 [[email protected] ~]# strings /lib64/libc.so.6 |grep GLIBC_ GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3

Qt 5.9 安装过程报错现象及解决方案

本人在从 Qt5.7 转移到 5.8 的时候发现,Windows 7 系统能运行 Qt 5.7 的环境在安装 Qt 5.8 或者 Qt 5.9 的过程中会报告各种奇怪的错误,能够全部忽略掉,让安装程序通过,但是,在启动Qt Creater 的过程中程序会直接崩溃,根本无法运行.经过长时间研究后发现,是因为 Qt 5.9 使用的是 这个: 程序安装过程中会安装这两个东西: 如果你安装失败,卸载了Qt 环境,这个也是不会被卸载的,你直接双击上面的 x64 或者 x86,会出现一个对话框: 这个地方直

MacOs 安装cordova报无权访问题解决方案

在MacOS安装cordova后,执行cordova -v报错: Error: EACCES: permission denied, open '/Users/jianuonuo/.config/configstore/insight-cordova.json' 使用sudo给这个文件或文件夹授权后,不起作用. 解决方案: sudo chown -R $USER:$GROUP ~/.npm sudo chown -R $USER:$GROUP ~/.config 原文地址:https://www

Vue-router 报NavigationDuplicated的可能解决方案

出现这个问题,控制台会报[NavigationDuplicated?{_name: "NavigationDuplicated", name: "NavigationDuplicated"}].其原因在于Vue-router在3.1之后把$router.push()方法改为了Promise.所以假如没有回调函数,错误信息就会交给全局的路由错误处理,因此就会报上述的错误. 如果你仔细观察并复现了多次错误你会发现,vue-router是先报了一个Uncaught (in

SpringMVC中用@ParamVariable传递的参数包含斜杠(/)时,匹配不了报404错误的解决方案

今天做网站[标签]筛选功能时,出现了这么个奇葩的问题. 我是直接通过<a>标签中href来跳转的,url中包含汉字 <a href="/tags/标签A">标签A</a> 后台代码是这样的: @RequestMapping(value = "/tags/{tagname}") public String tags(@PathVariable String tagname) { // ISO-8859-1 ==> UTF-8

chrome调试时js出现start.js报错原因及解决方案

现象: start.js是什么呢,它是qq安全软件装到chrome里的插件,用来对用户网络操作进行安全保护. 在这个js的第54行出现了代码错误:pwds并不是真正的数组,所以这里的var i in pwds的i值并不只是0~n,由此至错. 解决方案: 1.关掉qq安全助手这个插件. 2.告知js作者修改(:)貌似没有留联系邮箱).