項目從jdk1.6升級到jdk1.8,啟動的時候出現如下錯誤:
1 java.lang.RuntimeException: Error scanning entry module-info.class from jar file:///Users/liaochong/Develop/Intellij%20Idea/Workspace/Git/crm-plus1.8/crm-plus-web/crm-plus-web-war/target/crm-plus-web-war-1.0/WEB-INF/lib/ 2 at org.eclipse.jetty.annotations.AnnotationParser.parseJar(AnnotationParser.java:891) 3 at org.eclipse.jetty.annotations.AnnotationParser.parse(AnnotationParser.java:837) 4 at org.eclipse.jetty.annotations.AnnotationConfiguration$ParserTask.call(AnnotationConfiguration.java:159) 5 at org.eclipse.jetty.annotations.AnnotationConfiguration$1.run(AnnotationConfiguration.java:464) 6 at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672) 7 at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590) 8 at java.lang.Thread.run(Thread.java:745) 9 Caused by: 10 java.lang.IllegalArgumentException 11 at org.objectweb.asm.ClassReader.<init>(Unknown Source) 12 at org.objectweb.asm.ClassReader.<init>(Unknown Source) 13 at org.objectweb.asm.ClassReader.<init>(Unknown Source) 14 at org.eclipse.jetty.annotations.AnnotationParser.scanClass(AnnotationParser.java:959) 15 at org.eclipse.jetty.annotations.AnnotationParser.parseJarEntry(AnnotationParser.java:940) 16 at org.eclipse.jetty.annotations.AnnotationParser.parseJar(AnnotationParser.java:887) 17 at org.eclipse.jetty.annotations.AnnotationParser.parse(AnnotationParser.java:837) 18 at org.eclipse.jetty.annotations.AnnotationConfiguration$ParserTask.call(AnnotationConfiguration.java:159) 19 at org.eclipse.jetty.annotations.AnnotationConfiguration$1.run(AnnotationConfiguration.java:464) 20 at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672) 21 at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590) 22 at java.lang.Thread.run(Thread.java:745)
經排查,是引入的包版本不對,slf4j-api-1.8.0-alpha0.jar必須要jdk9才能支持(module-模塊化是9的特性)。