【问题描述】
PAS6.5.101部署应用后,应用功能正常,但后台一直报错,报错信息如下:
2022-09-20T16:16:31.623+0800] [Primeton AppServer 6.5] [SEVERE] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=138 _ThreadName=deployment-jar-scanner] [timeMillis: 1663661791623] [levelValue: 1000] [[
Exception while visiting module-info.class of size 361
java.lang.ArrayIndexOutOfBoundsException: 32800
at org.glassfish.hk2.external.org.objectweb.asm.ClassReader.readUTF8(ClassReader.java:2591)
at org.glassfish.hk2.external.org.objectweb.asm.ClassReader.readModule(ClassReader.java:728)
at org.glassfish.hk2.external.org.objectweb.asm.ClassReader.accept(ClassReader.java:632)
at org.glassfish.hk2.external.org.objectweb.asm.ClassReader.accept(ClassReader.java:500)
at org.glassfish.hk2.classmodel.reflect.Parser$5.on(Parser.java:336)
at com.primeton.appserver.enterprise.v3.server.ReadableArchiveScannerAdapter.handleEntry(ReadableArchiveScannerAdapter.java:141)
at com.primeton.appserver.enterprise.v3.server.ReadableArchiveScannerAdapter.onSelectedEntries(ReadableArchiveScannerAdapter.java:103)
at org.glassfish.hk2.classmodel.reflect.Parser.doJob(Parser.java:321)
at org.glassfish.hk2.classmodel.reflect.Parser.access$300(Parser.java:44)
at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:280)
at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
]]
【解决方案】
问题原因:应用中引用的jar是jdk11编译的,目前PAS只支持jdk8
项目解决方案:使用如下方式暂时关闭日志信息打印:
在PAS控制台->配置->xxx.config->日志记录程序设置->日志级别→添加日志记录程序,名称为:日志中抛异常的位置,等级设置为OFF
此项目根据日志异常设置如下:
【原文链接】
http://doc.primeton.com/pages/viewpage.action?pageId=82154755