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:
- Plugin scala-android
- Cómo administrar la autenticación / autorización para las solicitudes de usuarios enviadas desde aplicaciones móviles nativas que llaman a Play2! -Scala REST services
- Uso de Scala con Java en Android Studio
- Uso de una biblioteca Scala para una aplicación de Android
- ¿Los objetos de Scala sobreviven a que la actividad se reinicie en Android?
[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)
- Android Scala y Gradle
- Groovy, Scala, Clojure, etc scripts en Android
- Modo correcto de usar YouTube.Builder
- Biblioteca "libmaliinstr.so" no encontrado
- Casting un objeto java a objeto en Scala
- Android studio dalvik vm no puede encontrar la clase
- RxJava: encadenamiento de observables
- Cómo orientar Android con Scala 2.8 Trunk builds
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:
- Modifique su script sbt (probablemente ~ / bin / sbt) y agregue un parámetro "-XX: MaxPermSize = 512m", de lo contrario se quedará sin espacio PermGen
- Asegúrese de utilizar la plantilla 0.10 (la predeterminada) en lugar de la 0.11 que opcionalmente puede especificar.
- 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") )
- Android cómo utilizar el adaptador para listView sin extender listaActividad
- Android: notifyDataSetChanged () no actualizar listview después de cambiar la orientación