Skip to content

Should be able to process directly from a jar file into an output jar file #44

@pfn

Description

@pfn

This is actually a problem of processing proguarded jars on a case-insensitive filesystem (OSX, Windows, etc) and working with android

Typical build process that I do on android when using retrolambda:

  1. compile classes
  2. unpack all jars into retrolambda processing directory
  3. run retrolambda
  4. pack into a new jar
  5. hand off to dex

The problem is at step 2, when one or more of the input jars is processed by proguard, it does name obfuscation in such a way that there might be class com.example.a and com.example.A (for example see crashlytics which has a com.crashlytics.android.a and com.crashlytics.android.A). When the jars are unpacked, the a and A classes become a single file which are now improperly named.

This happens whether with unpacking all jars, or running retrolambda after running proguard. This seems to be a pretty difficult problem to solve without having retrolambda process directly into output jar files to bypass filesystem case insensitivity issues.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions