从命令行管理Android项目

7

我正在使用命令行管理和运行我的Android应用程序,而不使用ant。我按照以下步骤进行操作:

  • 生成R.java文件
  • 编译位于src目录中的所有.java文件以及R.java文件到.class文件
  • 使用以下命令将一组类文件汇编成dex文件
    dx --dex --verbose --output=./bin/classes.dex ./bin

.class文件位于bin目录下。

但是在这些步骤中,我遇到了以下错误:

java.lang.Runtime exception:.\bin file not found 
at com.android.dx.cf.direct.ClassPathOpener.process
at com.android.dx.command.dexer.Main.processOne
at com.android.dx.command.dexer.Main.processAllFiles
at com.android.dx.command.dexer.Main..run
at com.android.dx.command.dexer.Main.main
at com.android.dx.command.Main.main

由于这个问题,我无法创建Classes.dex文件。请问有人能提出解决方案吗?(注意:不使用eclipse和ant,只通过命令行)

1
如果我使用任何集成开发环境,就无法了解整个过程,所以只有在命令行下,我才能逐步了解每个步骤的过程。 - rajNaveen
1
谢谢,伙计,我搞定了,这是由于dx.bat文件引起的,在dx.bat文件中有set javaOpts=,我将其删除了。这是由于内存不足引起的。谢谢,Raj。 - rajNaveen
2个回答

0
如果您需要“从命令行管理Android项目”,那么您应该使用Ant构建。
Ant的build.xml是构建Android项目的官方标准化方式。Ant脚本可以做任何您需要构建项目的事情。
如果您想要最现代化的Android构建工具,可以查看Gradle for Android projects。注意:今天它仍处于alpha阶段。

0

尝试输入完整路径而不是相对路径

此外,您必须将类文件放在与其包名称完全相同的目录中。例如,对于com.test.me.MyActivity,您必须使用com/test/me/MyActivity.class。

既然我们谈到了这个话题,请记住dx只能处理使用Java6(或更低版本)创建的类文件,因此如果您正在使用java7编译代码,请将"source 1.6 target 1.6"参数添加到命令行中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接