当前位置: 首页 > 知识库问答 >
问题:

无法为类模块信息编制索引。类atlog4japi。jar:java。lang.IllegalStateException:未知标记!位置=4池计数=24

拓拔坚
2023-03-14

我们已经从log4j-api-2.7更新了log4jjar。jar到log4j-api-2.10。0.jar。我们在JBoss启动时得到了以下警告(我们使用的是JBoss-EAP-7.0)。

2018-09-05 05:31:28,669 WARN[org.jboss.as.server.deployment](MSC服务线程1-2)WFLYSRV0003:无法索引类module-info.class /content/project.ear/shared/log4j-api.jar:java.lang.IllegalStateExcoop:未知标签!POS=4 poolCount=24在org.jboss.jandex.ndexer.processConstantpool(ndexer.java:1416)在org.jboss.jandex.ndexer.index(ndexer.java:1450)在org.jboss.as.server.deployment.annotation.ResourceRootIndexer.indexResourceRoot(ResourceRootIndexer.java:99)org.jboss.as.server.deployment.annotation.AnnotationIndexProcessor.deploy(AnnotationIndexProcessor.java:51)org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:165)org.jboss.msc.service.ServiceControlllerImpl$StartTask. start Service(ServiceControlllerInp. java: 2032)在org. jboss. msc. service。ServiceControlllerImpl$StartWork. run(ServiceControlllerInp. java: 1955)在java. util. con电流。ThreadPoolExecutor. runWorker(ThreadPoolExecutor. java: 1149)在java. util. con当前。在java. lang上运行(ThreadPoolExecator. java: 624)。线程.运行(线程. java: 748)

经过我的分析,似乎模块信息。类是log4j-api-2.10中新引入的。0.jar,现在它无法在启动时索引该类。它使用JBoss的jandex-2.0。2.Final-redhat-1。来自eap-runtime-artifacts-7.0的依赖信息的jar。5.GA。波姆。

谁能帮我解决这个问题?

提前谢谢。

共有2个答案

太叔富
2023-03-14

这是一条警告消息,它的出现是因为jandex支持Java9只是忽略模块信息。在从属存档中对文件进行分类。为避免出现此警告消息,请将(wildfly\u HOME\modules\system\layers\base\org\jboss\jandex\main\jande-version.jar)中的jandex jar替换为jandex-2.0.5.Final-redhat-1和相应的module.xml。参考:https://issues.redhat.com/browse/JBEAP-15262 https://issues.redhat.com/browse/JBEAP-15715

慕容典
2023-03-14

首先,这只是一个警告。

我猜你使用的Java版本低于8。module-info.class用于所谓的多版本jar(可编译所有java版本的jar)。

Java直到版本8都不能100%兼容这种技术。因此,我看到的唯一方法是将Java版本升级到1.8或降级log4j

 类似资料:
  • web服务调用失败,出现以下错误。 错误[org.jboss.resteasy.resteasy_jaxrs.i18n](默认任务-43)RESTEASY002010:未能执行:javax。ws。rs.NotAuthorizedException:HTTP 401未经授权 服务器日志中也会出现以下警告。 无法索引类module-info.class /C:/Econiq-Github/reposi

  • 部署到本地JBOSS服务器时会发生此错误。是否有解决此警告的方法? 22:31:22992警告[org.jboss.as.server.deployment](MSC服务线程1-13)JBAS015852:无法索引类com/company/core/security/AuthRealm。类位于/C:/DevTools/jboss-eap-6.3/bin/content/platform-ws-0.

  • 问题内容: 我一直在尝试创建代码以生成随机名称。这里是 但是在“ let name”行上,这给了我标题上的错误。有谁知道为什么以及如何解决它? 问题答案: 您应该使用来按索引访问数组 取代这个 有了这个

  • 问题内容: 这是在扩展PFQueryTableViewController的类中,并且出现以下错误。这些行将是唯一的。 为什么我无法投放?有没有解决的办法? 错误是: …对于这一行: 问题答案: 问题不在于演员,而是事实,它似乎是一个可选数组:。 因此,如果要通过下标访问其值之一,则必须首先解开数组: 该表达式使用可选的链接来首先解包,然后调用其下标。 从Swift 2开始,您还可以使用guard

  • 文件范围的元数据 reST 有字段列表”field lists” 的概念; 字段序列如下: :fieldname: Field content 文件开端的字段列表会被文档工具解释为文档源信息,通常记录了作者,出版日期等元数据. 在Sphinx中, 在所有标记前面的字段列表将作为文档元数据放在Sphinx 环境中,不显示在输出文档中; 在文档标题后的字段列表仍然是文档源信息的一部分显示在输出文档中.

  • 问题内容: 我尝试运行以下代码。顺便说一句,我是python和sklearn的新手。 其中y是0和1的np.ndarray 我收到以下信息: 文件“ C:\ Anaconda3 \ lib \ site-packages \ sklearn \ linear_model \ logistic.py”,行> 1174,适合check_classification_targets(y) 文件“ C:\