Uploaded image for project: 'Jandex'
  1. Jandex
  2. JANDEX-14

Jandex doesn't work with invokedynamic constant pool tag

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 1.1.0.Final
    • 1.0.0.Final, 1.1.0.Alpha1
    • None

      Introduced in jdk7 and used, by java language, in jdk8 with lambda expressions
      It throws an exception with an invalid tag(18 invokedynamic)

      Follow some logs:

      Without lambda(invokedynamic):
      Indexed br.com.janario.jdk8.Test$1 (0 annotations)
      Indexed br.com.janario.jdk8.Test (0 annotations)
      Wrote 7.idx in 0.0180 seconds (2 classes, 0 annotations, 0 instances, 99 bytes)

      With lambda:
      ERROR: Could not index Test.class: Unknown tag! pos=1 poolCount = 61
      java.lang.IllegalStateException: Unknown tag! pos=1 poolCount = 61
      at org.jboss.jandex.Indexer.processConstantPool(Indexer.java:603)
      at org.jboss.jandex.Indexer.index(Indexer.java:637)
      at org.jboss.jandex.Main.scanFile(Main.java:146)
      at org.jboss.jandex.Main.scanFile(Main.java:135)
      at org.jboss.jandex.Main.indexDirectory(Main.java:101)
      at org.jboss.jandex.Main.execute(Main.java:69)
      at org.jboss.jandex.Main.main(Main.java:52)
      Wrote 8.idx in 0.0140 seconds (0 classes, 0 annotations, 0 instances, 8 bytes)

            jgreene@redhat.com Jason Greene
            janarioliver@gmail.com Janario Oliveira (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: