После того, как я столкнулся с таким количеством проблем, сколько существует перестановок набора инструментов командной строки Android, мне наконец удалось скомпилировать смесь исходного кода Scala и Java в пригодный для использования apk.
Как многие предполагают, я использовал proguard
для сжатия библиотеки Scala через инструмент dex
. Проблема в следующем:
BUILD SUCCESSFUL
Total time: 1 minute 29 seconds
Полторы минуты. Здесь мы говорим о приложении со сложностью Hello-World. Я не думаю, что смогу так развиваться. Мне нужно будет пройти курсы медитации.
Это конфигурация proguard
:
-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
Есть ли способ ускорить шаг proguard?
Редактировать: я запускаю это на довольно приличном двухъядерном компьютере с 3 ГБ оперативной памяти поверх 64-битного Linux. Выполнение ant compile
(scalac
/javac
) занимает 3 секунды. Полный ant install
занимает 1:30, как описано выше. Это шаг proguard
, который «зависает», согласно выходным данным, скорее всего, из-за размеров библиотеки среды выполнения scala/android.