首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动错误: org/apache/struts2/convention/DefaultClassFinder$InfoBuildingVisitor :java.lang.IncompatibleClassChangeError

启动错误: org/apache/struts2/convention/DefaultClassFinder$InfoBuildingVisitor :java.lang.IncompatibleClassChangeError
EN

Stack Overflow用户
提问于 2017-07-03 15:52:34
回答 2查看 2.8K关注 0票数 2

我有一个最初基于XML的Struts2应用程序,但现在我第一次引入了一个基于注释的操作,应用程序在启动时就中断了。

给定以下操作映射,在应用程序启动时,我会得到错误

代码语言:javascript
复制
java.lang.InstantiationError: com.opensymphony.xwork2.util.finder.ClassFinder
    at org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(PackageBasedActionConfigBuilder.java:390)
    at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:347)
    at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:199)
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:67)
    at org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:906)
    at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:445)
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:486)
    at org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:75)
    at org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:63)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)

这里有一个类似的问题,但没有人回答,Issue with Struts2 Filter Exception

库使用

  • struts2-convention-plugin-2.3.14.3.jar
  • struts2-core-2.5.10.1.jar
  • struts2-json-plugin-2.5.10.1.jar
  • struts2-spring-plugin-2.5.10.1.jar
  • struts2-tiles-plugin-2.5.10.1.jar
  • xwork-core-2.1.6.jar

更新:我认为-Plugin 2.3.14.3与其他2.5.10.1不兼容,所以我下载了:struts2-convention-plugin-2.5.10.1.jar

现在正在启动

代码语言:javascript
复制
java.lang.IncompatibleClassChangeError: org/apache/struts2/convention/DefaultClassFinder$InfoBuildingVisitor
    at org.apache.struts2.convention.DefaultClassFinder.readClassDef(DefaultClassFinder.java:459) ~[struts2-convention-plugin-2.5.10.1.jar:2.5.10.1]
    at org.apache.struts2.convention.DefaultClassFinder.<init>(DefaultClassFinder.java:90) [struts2-convention-plugin-2.5.10.1.jar:2.5.10.1]
    at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildClassFinder(PackageBasedActionConfigBuilder.java:397) [struts2-convention-plugin-2.5.10.1.jar:2.5.10.1]
    at org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(PackageBasedActionConfigBuilder.java:379) [struts2-convention-plugin-2.5.10.1.jar:2.5.10.1]
    at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:335) [struts2-convention-plugin-2.5.10.1.jar:2.5.10.1]
    at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53) [struts2-convention-plugin-2.5.10.1.jar:2.5.10.1]
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:199) [struts2-core-2.5.10.1.jar:2.5.10.1]

解决方案--解决方案是添加ASM5.xJAR,这是Struts对注释的依赖。我们用的是ASM 3.3。我添加了ASM,-Common,-Tree版本5.1Jars.

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-07-03 16:39:12

Struts2-约定插件2.5.10.1具有编译依赖关系

代码语言:javascript
复制
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.4</version>
</dependency>
<dependency>
    <groupId>org.ow2.asm</groupId>
    <artifactId>asm</artifactId>
    <version>5.1</version>
</dependency>
<dependency>
    <groupId>org.ow2.asm</groupId>
    <artifactId>asm-commons</artifactId>
    <version>5.1</version>
</dependency>

注释:--如果不需要asmasm-commons依赖项,可以降级为Struts2.5.5。

票数 1
EN

Stack Overflow用户

发布于 2017-07-03 16:18:50

Struts2使用ASM5x作为公约插件。检查类路径,确保您有适当版本的ASM jars。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44889756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档