Apologies, I wasn't clear enough lead to errors, we had a small chat about this on IRC,
[error] (android:proguard) java.io.IOException: Can't write [/Users/_/Backup/Experiments/Test/bin/classes.proguard.jar] (Can't read [/Users/_/.ivy2/cache/org.sonatype.sisu/sisu-guava/jars/sisu-guava-0.9.9.jar(;;;;;;!META-INF/**,!rootdoc.txt)] (Duplicate zip entry [sisu-guava-0.9.9.jar:com/google/common/base/Ascii.class])) Yes it's a proguard error, but something proguard doesn't give an option to switch off, I understand that the lib i'm including probably shouldn't use sisu-guava, i've used both excludes on the problematic transitive libs (next one is log4j) and successfully build. but results in runtime error. Disabling proguard results in alot of errors such as; warn] Exception in thread "pool-1-thread-640" java.lang.IllegalArgumentException: already added: Lcom/google/common/collect/Multisets$1$1; [warn] at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:122) [warn] at com.android.dx.dex.file.DexFile.add(DexFile.java:161) [warn] at com.android.dx.command.dexer.Main.processClass(Main.java:685) [warn] at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634) [warn] at com.android.dx.command.dexer.Main.access$600(Main.java:78) [warn] at com.android.dx.command.dexer.Main$ParallelProcessor.run(Main.java:1550) [warn] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [warn] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [warn] at java.lang.Thread.run(Thread.java:724) I see there is a possibly related, closed issue here; https://github.com/pfn/android-sdk-plugin/issues/60 but I couldn't find a command to cache duplicate classes? On Monday, October 6, 2014 2:02:42 AM UTC+2, pfn wrote: > > Proguard notes are not errors > > -- > Sent from my phone > On Oct 5, 2014 2:26 PM, <[email protected] <javascript:>> wrote: > >> I'm struggling abit with various dependencies a single java lib requires, >> added from a 3rd party maven repo. >> >> For various classes - I get alot of; >> Note: duplicate definition of program class >> [com.google.common.annotations.Beta] >> Note: duplicate definition of program class >> [com.google.common.annotations.GwtCompatible] >> >> First I tried apkbuildExcludes in Android, for files like >> META-INF/DEPENDENCIES >> >> I've tried exclude() in my libraryDependencies to filter out the libs >> that aren't required >> >> if I add; >> conflictManager := ConflictManager.strict >> >> On android:package-release, I immediately get; >> >> [info] Resolving org.codehaus.plexus#plexus-compiler-api;2.2 ... >> [error] org.codehaus.plexus#plexus-utils;3.0.8 (needed by >> [org.codehaus.plexus#plexus-compiler-api;2.2]) conflicts with >> org.codehaus.plexus#plexus-utils;2.0.6 (needed by []) >> [trace] Stack trace suppressed: run last *:update for the full output. >> [error] (*:update) >> org.apache.ivy.plugins.conflict.StrictConflictException: >> org.codehaus.plexus#plexus-utils;3.0.8 (needed by >> [org.codehaus.plexus#plexus-compiler-api;2.2]) conflicts with >> org.codehaus.plexus#plexus-utils;2.0.6 (needed by []) >> >> I saw sbt-assembly plugin and was wondering if I could use a >> MergeStrategy here, somehow? >> >> Any ideas how I can resolve this? >> >> -- >> You received this message because you are subscribed to the Google Groups >> "scala-on-android" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > -- You received this message because you are subscribed to the Google Groups "scala-on-android" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
