Dopo aver eseguito a testa in testa tutti i problemi quanti sono le permutazioni del set di strumenti da riga di comando Android, sono finalmente riuscito a compilare un mix di codice sorgente Scala e Java in un apk utilizzabile.Android, Scala e Proguard
Come molti suggeriscono, ho utilizzato proguard
per comprimere la libreria Scala tramite lo strumento dex
. Il problema è questo:
BUILD SUCCESSFUL
Total time: 1 minute 29 seconds
Un minuto e mezzo. Stiamo parlando di un'applicazione con la complessità di Hello-World qui. Non penso di poterlo sviluppare in questo modo. Ho bisogno di prendere lezioni di meditazione. ci
-injars ${out.absolute.dir}/classes:${scala-library.jar}(!META-INF/MANIFEST.MF,!library.properties)
-outjars ${out.absolute.dir}/classes.min.jar
-libraryjars ${android.jar}
-dontwarn
-dontoptimize
-dontobfuscate
-keep public class * extends android.app.Activity
è un modo per accelerare il passo Proguard:
Questa è la configurazione proguard
?
Modifica: Sto eseguendo questo in una macchina ram dual-core, 3GB abbastanza onesto, in cima a Linux a 64-bit. Una corsa di ant compile
(scalac
/javac
) richiede 3 secondi. Un intero ant install
richiede 1:30, come descritto sopra. È il passo proguard
che "si blocca", in base all'output, molto probabilmente a causa delle dimensioni della lib di scala/android runtime.
abbiamo bisogno ancora un po ' dettagli, ad esempio il set-up della macchina .. un numero di cpus, ram, ecc. –
presumibilmente il compilatore sarebbe il collo di bottiglia che il compilatore stai usando? –
Vedi anche: http://proguard.sourceforge.net/manual/examples.html # Scala. Penso che non sia il colletore del collo di bottiglia, ma solo gli 8,5 Mb di scala runtime impiegano un po 'di tempo a leggere e fare i bagagli. – Rogach