Skip to content

Version 1.6.1 breaks compiling for android. #34

Closed
@evant

Description

@evant

In the latest version, I'm getting the error when using gradle-retrolambda. 1.6.0 works fine.

Retrolambda 1.6.1                                          
Bytecode version: 51 (Java 7)                              
Input directory:  /home/evan/android/lambdatestProject/lambdaTestAndroid/build/retrolambda/debug
Output directory: /home/evan/android/lambdatestProject/lambdaTestAndroid/build/intermediates/classes/debug
Classpath:        /home/evan/android/lambdatestProject/lambdaTestAndroid/build/intermediates/exploded-aar/com.android.support/support-v4/20.0.0/classes.jar:/home/evan/android/lambdatestProject/lambdaTestAndroid/build/intermediates/exploded-aar/lambdatestProject/lambdaTestAndroidLib/unspecified/classes.jar:/home/evan/android/lambdatestProject/lambdaTestAndroid/build/intermediates/exploded-aar/com.android.support/support-v4/20.0.0/libs/internal_impl-20.0.0.jar:/opt/android-sdk/extras/android/m2repository/com/android/support/support-annotations/20.0.0/support-annotations-20.0.0.jar:/home/evan/android/lambdatestProject/lambdaTestAndroid/build/retrolambda/debug:/opt/android-sdk/platforms/android-20/android.jar

Error! Failed to transform some classes                         
java.lang.SecurityException: Prohibited package name: java.lang 
        at java.lang.ClassLoader.preDefineClass(ClassLoader.java:659)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:758)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:455)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:367)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
        at net.orfjackal.retrolambda.NonDelegatingClassLoader.loadClass(NonDelegatingClassLoader.java:22)
        at java.lang.ClassLoader.defineClass1(Native Method)    
        at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:455)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:367)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
        at net.orfjackal.retrolambda.NonDelegatingClassLoader.loadClass(NonDelegatingClassLoader.java:22)
        at net.orfjackal.retrolambda.LambdaUsageBackporter$InvokeDynamicInsnConvertingMethodVisitor.loadClass(LambdaUsageBackporter.java:173)
        at net.orfjackal.retrolambda.LambdaUsageBackporter$InvokeDynamicInsnConvertingMethodVisitor.backportLambda(LambdaUsageBackporter.java:161)
        at net.orfjackal.retrolambda.LambdaUsageBackporter$InvokeDynamicInsnConvertingMethodVisitor.visitInvokeDynamicInsn(LambdaUsageBackporter.java:154)
        at net.orfjackal.retrolambda.asm.ClassReader.readCode(ClassReader.java:1439)
        at net.orfjackal.retrolambda.asm.ClassReader.readMethod(ClassReader.java:1017)
        at net.orfjackal.retrolambda.asm.ClassReader.accept(ClassReader.java:693)
        at net.orfjackal.retrolambda.asm.ClassReader.accept(ClassReader.java:506)
        at net.orfjackal.retrolambda.LambdaUsageBackporter.transform(LambdaUsageBackporter.java:22)
        at net.orfjackal.retrolambda.Retrolambda$1.transform(Retrolambda.java:42)
        at net.orfjackal.retrolambda.BytecodeTransformingFileVisitor.visitFile(BytecodeTransformingFileVisitor.java:25)
        at net.orfjackal.retrolytecodeTransformingFileVisitor.visitFile(BytecodeTransformingFileVisitor.java:11)
        at java.nio.file.Files.walkFileTree(Files.java:2670)    
        at java.nio.file.Files.walkFileTree(Files.java:2742)    
        at net.orfjackal.retrolambda.Retrolambda.visitFiles(Retrolambda.java:52)
        at net.orfjackal.retrolambda.Retrolambda.run(Retrolambda.java:39)
        at net.orfjackal.retrolambda.Main.main(Main.java:26)

Note that compiling with gradle-retrolambda uses a custom --bootclasspath which contains the android.jar patched with some necessary classes taken from the java 8 runtime.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions