2016-03-01 51 views
0

我正在从Eclipse迁移到Android Studio。在我的Eclipse实现中,我使用命令行中的ant来运行一个非常自定义的build.xml。我想重现与Android Studio相同的功能,并有一个可以从命令行运行的构建过程。强制gradle生成一个apk

我已经了解到,gradle这个可以在命令行中运行,并发现,如果我输入

./gradlew assembleRelease

,一个APK将产生,但只有源文件已经改变。

即使没有信号源发生变化,我怎样才能让它产生apk?

+2

让它先清理项目。这将强制重建中间产品,并将生成APK。它确实与'源文件改变'没有关系,而是'中间对象改变',只有当源文件改变时才会重新生成'如果你明白我在说什么:) – Shark

+0

@Shark谢谢你,在命令行上工作。我想我可以在我的bash脚本中放两行来实现这一点。让它成为答案,我会接受它。 – NickT

+0

够公平的,完成:)很高兴有帮助。 – Shark

回答

1

要实现那个,还是强制中介文件的再生,你应该先清理项目。

根据我的评论,捕获是只有当源文件已被更改时才会重新生成中间对象。只有在中间文件发生变化时才会重新生成APK。

因此,适当的,虽然解决方法的方式做这将是

1)清理项目第一

2),然后运行命令行

构建由于中间文件会被删除和重新生成,APK应该每次生成。

我reffering到的评论是:

Make it clean the project first. That will force rebuilding the intermediates, and will produce an APK. It really has nothing to do with source files changed but rather intermediary objects changed, and those get re-generated only when source files changed if you understand what I'm saying :)