Fixed
Status Update
Comments
vs...@google.com <vs...@google.com>
je...@google.com <je...@google.com>
yb...@google.com <yb...@google.com> #2
We use build flavours heavily with a lot of common code. The refactoring support in AS is really good but it continually catches us out when it doesn't work across all flavours in a project. It's a big gap for serious product development.
[Deleted User] <[Deleted User]> #3
We at my company need this same feature. We have a lot of white labels and need refactor the same class across flavours. :(
je...@google.com <je...@google.com> #4
I need this feature too...
[Deleted User] <[Deleted User]> #5
+1, I need this very badly
je...@google.com <je...@google.com> #6
+1 My company also need this feature.
cm...@google.com <cm...@google.com> #7
Can we atleast know the status of the issue please? Will it be fixed or is it in low priority. It's been 4 years.
[Deleted User] <[Deleted User]> #8
We are currently investigating possibly solutions.
je...@google.com <je...@google.com> #9
+1 This will exclude a lot of unnecessary work. In my work I have 25 flavours. :(
[Deleted User] <[Deleted User]> #10
+1 .. we need it as well...
je...@google.com <je...@google.com> #11
Any update on this?
[Deleted User] <[Deleted User]> #12
We also need this feature...please...
cm...@google.com <cm...@google.com> #13
I would like to vote for this feature as well.
[Deleted User] <[Deleted User]> #14
+1
cm...@google.com <cm...@google.com> #15
Build flavor source code is useless until this is fixed.
[Deleted User] <[Deleted User]> #16
+1
cm...@google.com <cm...@google.com> #17
+1
[Deleted User] <[Deleted User]> #18
+1 "Build flavor source code is useless until this is fixed." - agree
be...@google.com <be...@google.com> #19
+1
[Deleted User] <[Deleted User]> #20
My team are heavy users of Android Flavours and the IDE remaining semantically aware of all flavours besides the currently 'focused' one, for refactoring and searching purposes, would be a major productivity boost.
Indeed, the current state almost feels like flavours are only partially supported in the IDE.
Indeed, the current state almost feels like flavours are only partially supported in the IDE.
cm...@google.com <cm...@google.com> #21
This is the joy of case preserving but case insensitive file systems...
I think I have enough to reproduce this :)
I think I have enough to reproduce this :)
be...@google.com <be...@google.com> #22
To give you a bit more context: currently we don't handle libraries that use a.class and A.class correctly on OS X (since we unpack the jars for processing). The default ProGuard flags for android projects include -dontusemixedcaseclassnames which prevents this from happening in AAR files built with Gradle.
If you don't have sources for the AAR but know the "entry points", you may want to re-ProGuard classes.jar with the flag mentioned and appropriate -keep rules.
If you don't have sources for the AAR but know the "entry points", you may want to re-ProGuard classes.jar with the flag mentioned and appropriate -keep rules.
cm...@google.com <cm...@google.com> #23
Also, if the prebuilt aar was built with Android Gradle Plugin before 1.5 even with -dontusemixedcaseclassnames it could still generate a class called 'r'.
For libraries obfuscated with 1.5 we keep the R class with ProGuard and also pass -dontusemixedcaseclassnames which solves the issue. (the R class is removed in the jar phase)
For libraries obfuscated with 1.5 we keep the R class with ProGuard and also pass -dontusemixedcaseclassnames which solves the issue. (the R class is removed in the jar phase)
[Deleted User] <[Deleted User]> #24
I do not have source code of the library and I am facing the same issues. Please suggest me with what can be done to resolve the issue.
Is it going to be fixed in future releases?
Is it going to be fixed in future releases?
[Deleted User] <[Deleted User]> #25
it's been a few months since I reported it, I'm still trying to work with my library vendor to get a compatible library from them, but it's out of my control. Is this issue being recognized as a bug that's going to be resolved?
cm...@google.com <cm...@google.com> #26
This won't be fixed in 2.2, but in the subsequent release we will treat AARs added to configurations as remote and you won't see this issue.
As a workaround you can use the aar in a repository instead, which should make it appear remote:
repositories { flatDir { dirs 'libs' } }
dependencies { compile(name:'filename', ext:'aar'}}
or use a case-sensitive disk image.
As a workaround you can use the aar in a repository instead, which should make it appear remote:
repositories { flatDir { dirs 'libs' } }
dependencies { compile(name:'filename', ext:'aar'}}
or use a case-sensitive disk image.
[Deleted User] <[Deleted User]> #27
Thanks for the update
[Deleted User] <[Deleted User]> #28
Your workaround did work, our team is now able to use Instant Run - thanks!
Description
100% reproducible
If I use gradle plugin alpha9 I am able to build.
setting incremental to true, false or unspecified has no effect.
minSdk 21
target/compile 23
logs:
AGPBI: {"kind":"error","text":"Error converting bytecode to dex:\nCause: java.lang.RuntimeException: Exception parsing classes","sources":[{}],"original":"UNEXPECTED TOP-LEVEL EXCEPTION:\njava.lang.RuntimeException: Exception parsing classes\n\tat com.android.dx.command.dexer.Main.processClass(Main.java:752)\n\tat com.android.dx.command.dexer.Main.processFileBytes(Main.java:718)\n\tat com.android.dx.command.dexer.Main.access$1200(Main.java:85)\n\tat com.android.dx.command.dexer.Main$FileBytesConsumer.processFileBytes(Main.java:1645)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)\n\tat com.android.dx.command.dexer.Main.processOne(Main.java:672)\n\tat com.android.dx.command.dexer.Main.processAllFiles(Main.java:574)\n\tat com.android.dx.command.dexer.Main.runMultiDex(Main.java:366)\n\tat com.android.dx.command.dexer.Main.run(Main.java:275)\n\tat com.android.dx.command.dexer.Main.main(Main.java:245)\n\tat com.android.dx.command.Main.main(Main.java:106)\n","tool":"Dex"}
xxxprojectxxx:transformClassesWithDexForDevDebug FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':xxxprojectxxx:transformClassesWithDexForDevDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_71.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED