yWorks/yGuard

Support Java 17

travisspencer opened this issue · 2 comments

When I try to compile my code with Java 17 and obfuscate it, I get this error using version 3.0.0:

java.io.IOException: Incompatible version number for class file format: 61.0
        at com.yworks.yguard.obf.classfile.ClassFile.read(ClassFile.java:340)
        at com.yworks.yguard.obf.classfile.ClassFile.create(ClassFile.java:139)
        at com.yworks.yguard.obf.GuardDB.buildClassTree(GuardDB.java:727)
        at com.yworks.yguard.obf.GuardDB.retain(GuardDB.java:148)
        at com.yworks.yguard.ObfuscatorTask.execute(ObfuscatorTask.java:1063)
        at com.yworks.yguard.YGuardTask.execute(YGuardTask.java:118)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)

To work around this, I add this to my build.gradle file:

compileKotlin {
    kotlinOptions {
        jvmTarget = "13"
    }
}

Is this because Java 17 isn't supported?

Indeed. See #108 (comment)

yGuy commented

We're currently working on Java 17 support and hope to have it implemented by April.