Wildfly 9.0.2-Struts 1.x 的最终 ClassNotFoundException

Posted

技术标签:

【中文标题】Wildfly 9.0.2-Struts 1.x 的最终 ClassNotFoundException【英文标题】:Wildfly 9.0.2-Final ClassNotFoundException for Struts 1.x 【发布时间】:2016-02-02 10:47:11 【问题描述】:

在我的 Wildfly 上部署 app.war (Struts 1.x) 时,会出现以下信息:

无法上传部署:"WFLYCTL0080: Failed services" => "jboss.deployment.unit.\"app.war\".POST_MODULE" => “服务中的 org.jboss.msc.service.StartException jboss.deployment.unit.\"app.war\".POST_MODULE: WFLYSRV0153: 失败 部署\"app.war\"的进程阶段POST_MODULE 原因: java.lang.RuntimeException:WFLYSRV0177:反射时出错 org.ajaxtags.tags.AjaxDisplayTag 类的信息 ClassLoader ModuleClassLoader for Module \"deployment.app.war:main\" 从服务模块加载程序引起:java.lang.NoClassDefFoundError: au/id/jericho/lib/html/Segment 原因: java.lang.ClassNotFoundException: au.id.jericho.lib.html.Segment 来自 [来自服务模块加载器的模块\"deployment.app.war:main\"]"

我已经下载了jericho-html-2.6.1-sources.jar,并将它作为一个模块放入$wf-dir\modules\system\layers\base\au\id\jericho\lib\html\main\ 中,并带有module.xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="au.id.jericho.lib.html">
    <resources>
        <resource-root path="jericho-html-2.6.1-sources.jar"/>
    </resources>
    <dependencies>
    </dependencies>
</module>

还有同样的问题... 谢谢你的帮助! :)

【问题讨论】:

【参考方案1】:

这已通过将构建系统从 Ant 更改为 Maven 得到解决 - 看起来 Wildfly 在解决目录约定时遇到了一些问题。在 Glassfish 3.1.1 上,这适用于 Ant

【讨论】:

以上是关于Wildfly 9.0.2-Struts 1.x 的最终 ClassNotFoundException的主要内容,如果未能解决你的问题,请参考以下文章

使用 wildfly (wildfly:deploy) 在一个简单的 Maven 项目中构建失败

Docker 容器中的 Wildfly 未启动

具有 Wildfly 域的数据源

Wildfly 12 infinispan 缓存查找不起作用

Wildfly及UrlRewrite

WildFly + 休眠