Show Table of Contents
4.2.3. 查找 JBoss 模块依赖关系
要解决依赖关系,首先,通过查找
EAP_HOME/modules/system/layers/base/ 目录找到包含 ClassNotFoundException 指定的类的模块。如果您找到这个类的模块,您必须在 manifest 条目里添加一个依赖关系。
例如,如果您在日志里看到 ClassNotFoundException 跟踪信息:
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.Log
from [Module "deployment.TopicIndex.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:188)
通过下列步骤来查找包含这个类的 JBoss 模块:
过程 4.5. 找到依赖关系
- 首先确定这个类是否有明显的模块。
- 进入
EAP_HOME/modules/system/layers/base/目录并查找对应ClassNotFoundException里命名的类的模块路径。找到模块路径org/apache/commons/logging/。 - 打开
EAP_HOME/modules/system/layers/base/org/apache/commons/logging/main/module.xml文件并找到模块名称。在这个例子里是 "org.apache.commons.logging"。 - 添加模块名到
MANIFEST.MF文件里的依赖关系:Manifest-Version: 1.0 Dependencies: org.apache.commons.logging
- 如果这个类没有明显的模块路径,您可能需要在另一个位置寻找依赖关系。
- 在 Tattletale 报告里找到名为
ClassNotFoundException的类。 - 在
EAP_HOME/modules目录里找到包含 JAR 的模块以及和前一步骤里相同的模块名。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.