sbt android插件构建时间长

sbt android插件构建时间长,android,scala,sbt,sbt-android-plugin,Android,Scala,Sbt,Sbt Android Plugin,我已经用sbt android插件创建了一个演示应用程序 这个应用程序非常简单。 我已经在/src/main/java/my/package/下放置了一个MainActivity.java文件,当按下一个按钮时,它会将您带到第二个活动,但在Scala中完成 一切都很好,但构建时间太快了。 当我修改设备中运行的内容时,请使用: >android:包调试 >android:启动设备 我的问题是,构建一个两个活动的项目几乎需要一分钟的时间。 还有其他编译和运行的方法吗 这是我的android输出:包调

我已经用sbt android插件创建了一个演示应用程序

这个应用程序非常简单。 我已经在
/src/main/java/my/package/
下放置了一个
MainActivity.java
文件,当按下一个按钮时,它会将您带到第二个
活动
,但在
Scala
中完成

一切都很好,但构建时间太快了。 当我修改设备中运行的内容时,请使用:

>android:包调试

>android:启动设备

我的问题是,构建一个两个活动的项目几乎需要一分钟的时间。 还有其他编译和运行的方法吗

这是我的android输出:包调试

>安卓:软件包调试[info]编写 /Users/macarse/Documents/demo/target/src_managed/main/scala/my/package/TR.scala [信息]正在将1个Scala源代码编译为 /用户/macarse/Documents/demo/target/scala-2.9.0-1/classes。。。 ProGuard,版本4.6 ProGuard在GNU通用版本下发布 公共许可证。因此,您必须确保链接到 它(scala,…)也带有GNU通用公共许可证。 或者,您可以向的作者申请例外 ProGuard。读取程序目录 [/Users/macarse/Documents/demo/target/scala-2.9.0-1/classes]阅读 程序罐 [/Users/macarse/.sbt/boot/scala-2.9.0-1/lib/scala-library.jar] (已过滤)读取库jar [/Users/macarse/Documents/android-sdk-mac_86/platforms/android-4/android.jar] 注意:您正在忽略所有警告!准备输出罐 [/Users/macarse/Documents/demo/target/classes.min.jar]正在复制 来自程序目录的资源 [/Users/macarse/Documents/demo/target/scala-2.9.0-1/classes]复制 来自程序jar的资源 [/Users/macarse/.sbt/boot/scala-2.9.0-1/lib/scala-library.jar] (已过滤)[信息]索引 /用户/macarse/Documents/demo/target/classes.dex[info]打包 /用户/macarse/Documents/demo/target/demo-0.1.apk[成功]总计 时间:56秒,完成时间:2011年10月29日下午4:22:54


这需要很长的时间,因为proguard需要处理Scala标准库以最小化您得到的.apk文件,而且Scala标准库非常庞大

如果您没有使用Scala2.9的功能,我建议您切换到Scala2.8,因为2.8有一个较小的标准库

另一方面,在没有必要时不要使用android:packagedebug
compile
将编译您的源代码,如果您只想确保您的程序可以编译,这就足够了


当您准备在android设备上进行测试时,仅使用android:package debug,这将节省您的时间。

有几个选项:


还有一个名为proguard的项目,它比proguard快得多,但它还没有与sbt插件集成。

感谢您的回复。AFAIK compile也会执行proguard过程,因此也需要很长时间。这是不正确的,至少在android插件0.6.x中是这样<代码>编译将不会执行proguard过程。