Error al ejecutar sbt install-emulator

Estoy siguiendo el video en esta página http://zegoggl.es/2009/12/building-android-apps-in-scala-with-sbt.html que utilizan SBT para crear un proyecto de Android. Sin embargo, llego al punto de intentar instalar el emulador usando

sbt install-emulator 

Y obtengo el siguiente error:

  [info] Nothing to compile. [info] Post-analysis: 1 classes. [info] == tests / compile == [info] [info] == awesomepad / proguard == ProGuard, version 4.4 ProGuard is released under the GNU General Public License. The authors of all programs or plugins that link to it (sbt, ...) therefore must ensure that these programs carry the GNU General Public License as well. Reading program directory [C:\Projects\Scala\sbt2test\awesomepad\target\scala_2. 9.1\classes] java.io.IOException: Can't read [proguard.ClassPathEntry@550a17fb] (Can't proces s class [com/kickass/awesomepad/R$attr.class] (Unsupported version number [51.0] for class format)) at proguard.InputReader.readInput(InputReader.java:230) at proguard.InputReader.readInput(InputReader.java:200) at proguard.InputReader.readInput(InputReader.java:178) at proguard.InputReader.execute(InputReader.java:78) at proguard.ProGuard.readInput(ProGuard.java:195) 

Tuve el mismo problema. Me di cuenta de que era porque estaba usando JDK 1.7. Aunque los frascos creados con 1,6 funcionan en 1,7, proguard para 1,6 frascos no funciona con 1,7 jarras. Actualmente, sólo las versiones beta de Proguard están disponibles para 1.7. Por lo tanto, las herramientas de Android y los repositorios de maven tienen proguard para 1,6 jarras. Cuando intenta recortar 1,7 jarras, que lanza ese error.

Para solucionar este problema, bajé a JDK 1.6, desinstalé 1.7 y me aseguré de que mis frascos fueran creados por 1.6 herramientas JDK.

Para eliminar 1.7 jarras del repositorio local, acabo de eliminar los directorios bajo ~ / .ivy2 y volví a crear el proyecto android utilizando el complemento. Y acabo de seguir el README para el plugin de Android a la camiseta.

Como la página a la que enlazas dice: "Nota: este artículo no se ha actualizado en un tiempo y está desactualizado. En duda, consulta el README del sbt-android-plugin". El readme allí ( README.md ) contiene el único conjunto de instrucciones que he podido encontrar que realmente funciona con las versiones actuales de scala, sbt y el SDK de Android.

Tuve que hacer sólo pequeños ajustes para conseguir que funcione:

  1. Modifique su script sbt (probablemente ~ / bin / sbt) y agregue un parámetro "-XX: MaxPermSize = 512m", de lo contrario se quedará sin espacio PermGen
  2. Asegúrese de utilizar la plantilla 0.10 (la predeterminada) en lugar de la 0.11 que opcionalmente puede especificar.
  3. Asegúrese de saltar a la sección "Hacking en el complemento" cuando se lo indique.

Espero que esto ayude.

Para mí, la descripción en el sitio de plugins era suficiente: link .

¿Has intentado hacerlo de esa manera?

Porque aparentemente el jdk1.7 no es compatible, tuve el mismo problema. En mi archivo build.scala , agregué la siguiente línea:

 javaHome := Some(file("c:\\Program Files\\Java\\jdk1.6.0_35")) 

Y luego funcionó.

He obtenido el error "(número de versión no compatible [51.0] para el formato de clase)" con la versión de java "1.7.0_51".

Este problema se corrigió agregando la línea de compatibilidad javac a Build.scala:

 val settings = Defaults.defaultSettings ++ Seq ( ... javacOptions ++= Seq("-encoding", "UTF-8", "-source", "1.6", "-target", "1.6") ) 
  • ¿Qué hay en scala-android.jar?
  • Los actores de Scala en android
  • Scala + Android Novato
  • Problema: "Extracción" de JSON usando ascensor-json en una aplicación Android (Scala)
  • ¿Cómo agregar más tareas y ajustes similares al Plugin Android de Jan Berkel en SBT?
  • No se puede encontrar el método en la actividad
  • ¿Qué idiomas están maduros para desarrollar aplicaciones nativas en Android
  • Scala, Android y Eclipse
  • Aplicación Android basada en Java -> cambiar a Scala
  • Cómo Jack (Java Android Compiler Kit) afectará a los desarrolladores de Scala
  • Proyecto LibGDX escrito en Scala, en Android, con IntelliJ
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.