When I'm compiling, I've a lot of proguard's warning like:
 
Warning: library class org.apache.http.impl.client.AbstractHttpClient 
depends on program class org.apache.http.ConnectionReuseStrategy

Because of proguard. How to avoid this? It don't let me compile, because, 
after kinda 1k of warning like this, it gives me the error:

Note: there were 4 references to unknown classes.
      You should check your configuration for typos.
      
(http://proguard.sourceforge.net/manual/troubleshooting.html#unknownclass)
Note: there were 13 unkept descriptor classes in kept class members.
      You should consider explicitly keeping the mentioned classes
      (using '-keep').
      
(http://proguard.sourceforge.net/manual/troubleshooting.html#descriptorclass)
Note: there were 35 unresolved dynamic references to classes or interfaces.
      You should check if you need to specify additional program jars.
      
(http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclass)
Warning: there were 16511 unresolved references to classes or interfaces.
         You may need to add missing library jars or update their versions.
         If your code works fine without the missing classes, you can 
suppress
         the warnings with '-dontwarn' options.
        
 (http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)
Warning: there were 167 instances of library classes depending on program 
classes.
         You must avoid such dependencies, since the program classes will
         be processed, while the library classes will remain unchanged.
        
 (http://proguard.sourceforge.net/manual/troubleshooting.html#dependency)
Warning: there were 36 unresolved references to program class members.
         Your input classes appear to be inconsistent.
         You may need to recompile the code.
        
 
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedprogramclassmember)
Warning: there were 1 unresolved references to library class members.
         You probably need to update the library versions.
        
 
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedlibraryclassmember)
[trace] Stack trace suppressed: run last android:proguard for the full 
output.
[error] (android:proguard) java.io.IOException: Please correct the above 
warnings first.
[error] Total time: 117 s, completed 11-nov-2014 10.56.15


My build.sbt is:
import android.Keys._
import sbt.Keys._
import sbt._


object Build extends Build {


  lazy val androidScala = Project(
    "FourMeAndroid",
    file("."),
    settings = fullAndroidSettings
  )

  lazy val fullAndroidSettings =
    Defaults.defaultSettings ++
    proguardSettings ++
    Seq(
      dexMaxHeap in Android := "2048m",
      dexCoreLibrary in Android := true,
      scalaVersion := Version.scala,
      apkbuildExcludes in Android += "META-INF/LICENSE.txt",
      scalacOptions ++= Seq(
        "-unchecked",
        "-deprecation",
        "-Xlint",
        "-language:_",
        "-encoding", "UTF-8"
      ),
      libraryDependencies ++= Seq(
        "it.newvision.nv4me.notificationcenter" % "4me-nc-model_2.10.0" % 
"0.5.5" excludeAll(ExclusionRule(organization = "org.codehaus.jackson"), 
ExclusionRule(organization = "org.slf4j")),
        "it.newvision.nvp" % "xcontents-core-model_2.10.0" % "4.2.0" 
excludeAll(ExclusionRule(organization = "org.codehaus.jackson"), 
ExclusionRule(organization = "org.slf4j")),
        "it.newvision.nvp" % "nvp-sso-core-model_2.10.0" % "4.2.0" 
excludeAll(ExclusionRule(organization = "org.codehaus.jackson"), 
ExclusionRule(organization = "org.slf4j")),
        "it.newvision.nvp" % "xadmin-core-model_2.10.0" % "4.2.0" 
excludeAll(ExclusionRule(organization = "org.codehaus.jackson"), 
ExclusionRule(organization = "org.slf4j")),
        "it.newvision.nvp" % "xpackager-core-model_2.10.0" % "4.2.0" 
excludeAll(ExclusionRule(organization = "org.codehaus.jackson"), 
ExclusionRule(organization = "org.slf4j")),
        "it.newvision.4me.ue" % "4me-ue-model_2.10.0" % "1.3" 
excludeAll(ExclusionRule(organization = "org.codehaus.jackson"), 
ExclusionRule(organization = "org.slf4j")),
        "com.typesafe.akka" % "akka-actor_2.10" % "2.1.4",
        "commons-lang" % "commons-lang" % "2.6",
        "com.google.android" % "support-v4" % "13",
        "com.actionbarsherlock" % "actionbarsherlock" % "4.2.0",
        "org.apache.httpcomponents" % "httpmime" % "4.1",
        "org.codehaus.jackson" % "jackson-mapper-asl" % "1.9.12",
        "com.koushikdutta.android-async" % "androidasync" % "1.1",
        "com.nostra13.universalimageloader" % "universal-image-loader" % 
"1.9.0",
        "org.apache.commons" % "commons-lang3" % "3.3",
        "ch.acra" % "acra" % "4.5.0",
        "com.squareup.picasso" % "picasso" % "2.3.4"
      ),
      resolvers ++= Seq(
        "maven-repo" at "file://\\\\pz-ci\\ci_repository\\maven_repository",
        "maven-repo-local-additions" at 
"file://\\\\pz-ci\\ci_repository\\maven-repo-local-additions"
      )
    )


  val proguardSettings = Seq(
    useProguard in Android := true,
    proguardOptions in Android ++= Seq(
      "-dontoptimize -dontpreverify -dontobfuscate", // shrinking only
      "-dontskipnonpubliclibraryclassmembers", // keep Jackson's internal 
classes
      "-dontskipnonpubliclibraryclasses", // keep Jackson's internal classes
      "-keepattributes *Annotation*.", // keep Jackson Json Annotations.
      "-keepclassmembers enum * { public static **[] values(); public 
static ** valueOf(java.lang.String); }",
      "-keep public class it.newvision.nvp.*.services.model.**",
      "-keep public class it.newvision.nvp.*.model.**",
      "-keep interface android.support.v4.app.** { *; }",
      "-keep class scala.collection.SeqLike { public protected *; }",
      "-keep public class com.sun.jersey.core.util.MultivaluedMapImpl",
      "-keep public class com.sun.jersey.api.client.config.ClientConfig",
      "-keep public class 
com.sun.jersey.api.client.config.DefaultClientConfig",
      "-keep public class org.codehaus.jackson.map.JsonSerializer",
      "-keep public class org.codehaus.jackson.map.JsonDeserializer",
      "-keep public class akka.actor.**  { public protected *; }",
      "-keep public class akka.event.**  { public protected *; }",
      "-dontnote **"
    )
  )

  val pgOptions = Seq(
    "-dontoptimize -dontpreverify -dontobfuscate", // shrinking only
    "-dontskipnonpubliclibraryclassmembers", // keep Jackson's internal 
classes
    "-dontskipnonpubliclibraryclasses", // keep Jackson's internal classes
    "-keepattributes *Annotation*.", // keep Jackson Json Annotations.
    "-keepclassmembers enum * { public static **[] values(); public static 
** valueOf(java.lang.String); }",
    "-keep public class it.newvision.nvp.*.services.model.**",
    "-keep public class it.newvision.nvp.*.model.**",
    "-keep interface android.support.v4.app.** { *; }",
    "-keep class scala.collection.SeqLike { public protected *; }",
    "-keep public class com.sun.jersey.core.util.MultivaluedMapImpl",
    "-keep public class com.sun.jersey.api.client.config.ClientConfig",
    "-keep public class 
com.sun.jersey.api.client.config.DefaultClientConfig",
    "-keep public class org.codehaus.jackson.map.JsonSerializer",
    "-keep public class org.codehaus.jackson.map.JsonDeserializer",
    "-keep public class akka.actor.**  { public protected *; }",
    "-keep public class akka.event.**  { public protected *; }",
    "-dontnote **")

  unmanagedBase <<= baseDirectory { base => base / "lib"}

   object Version {
    val scala = "2.10.2"
  }


}



-- 
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.

Reply via email to