]
Nick Boldt commented on JBIDE-25441:
------------------------------------
Suggestion in the above post is to do this:
{quote}I think jandex should be upgrade to version 2.0.4.Final that should have this
fixed.{quote}
Affected files are therefore:
{code}
jbosstools-base/common/plugins/org.jboss.tools.common.core/META-INF/MANIFEST.MF
jbosstools-base/common/plugins/org.jboss.tools.common.core/pom.xml
jbosstools-base/common/plugins/org.jboss.tools.common.core/src/org/jboss/tools/common/core/jandex/JandexUtil.java
(uses jandex 1.2.4.Final)
jbosstools-base/common/tests/org.jboss.tools.common.core.test/src/org/jboss/tools/common/core/test/JandexTest.java
jbosstools-javaee/batch/plugins/org.jboss.tools.batch.core/src/org/jboss/tools/batch/internal/core/scanner/BatchArchiveDetector.java
jbosstools-javaee/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/scanner/lib/BeanArchiveDetector.java
(use org.jboss.tools.common.core.jandex.JandexUtil)
jbosstools-hibernate/plugins/org.jboss.tools.hibernate.runtime.v_4_3/META-INF/MANIFEST.MF
jbosstools-hibernate/plugins/org.jboss.tools.hibernate.runtime.v_4_3/pom.xml
(uses jandex 1.1.0.Final)
{code}
Problems with CDI Builder and scanning Jars which support Java 9
----------------------------------------------------------------
Key: JBIDE-25441
URL:
https://issues.jboss.org/browse/JBIDE-25441
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: cdi, common
Affects Versions: 4.5.1.Final, 4.5.2.AM1
Reporter: Nick Boldt
Fix For: 4.5.2.AM2
As reported in
https://developer.jboss.org/message/978446?et=watches.email.thread#978446:
{quote}
Setup:
* Eclipse Oxygen 4.7.1
* JBoss Tools 4.5.1.Final (also tested with latest development version 4.5.2.AM1)
* An maven web application with certain dependencies
** So far, we found two dependencies, which lead to this jandex scaning error after
upgrading to latest version
** org.apache.logging.log4j version 2.10.0
** org.ow2.asm version 6.0
This leads to an CDI Builder IllegalStateException - see exception trace below.
Both dependencies started support for Java 9, which seems to cause this exception.
*Apache Log4j 2.10.0 released*:
http://mail-archives.apache.org/mod_mbox/www-announce/201711.mbox/%3Cdf95...
{code}
!MESSAGE Errors running builder 'CDI (Contexts and Dependency Injection) Builder'
on project 'Webapp'.
!STACK 0
java.lang.IllegalStateException: Unknown tag! pos=4 poolCount = 24
at org.jboss.jandex.Indexer.processConstantPool(Indexer.java:665)
at org.jboss.jandex.Indexer.index(Indexer.java:699)
at
org.jboss.tools.common.core.jandex.JandexUtil.createJarIndex(JandexUtil.java:56)
at
org.jboss.tools.common.core.jandex.JandexUtil.hasAnnotation(JandexUtil.java:104)
at
org.jboss.tools.cdi.internal.core.scanner.lib.BeanArchiveDetector.hasAnnotatedBeans(BeanArchiveDetector.java:276)
at
org.jboss.tools.cdi.internal.core.scanner.lib.BeanArchiveDetector.resolve(BeanArchiveDetector.java:203)
at
org.jboss.tools.cdi.internal.core.scanner.lib.ClassPathMonitor.detectBeanModule(ClassPathMonitor.java:150)
at
org.jboss.tools.cdi.internal.core.scanner.lib.ClassPathMonitor.process(ClassPathMonitor.java:106)
at org.jboss.tools.cdi.core.CDICoreBuilder.build(CDICoreBuilder.java:215)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:735)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206)
at
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:301)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:304)
at
org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:360)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:383)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:142)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:232)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)
{code}
{quote}