我该如何设置ANT_HOME和JAVA_HOME?

时间:2013-03-29 21:23:33

标签: android

我在CentOS 6.3机器上。我通过yum安装了ant和openjdk。我应该将环境变量ANT_HOME(和JAVA_HOME)设置为什么?我看了整个文件系统,找不到任何适合蚂蚁的东西。

对于java,/ usr / lib / jvm中有很多符号链接。并且' java'实际上是一个符号链接,指向另一个链接,另一个指向最终指向/usr/lib/jvm/jre-1.7.0-openjdk/bin/java,这是一个实际文件。我应该将JAVA_HOME设置为什么?

最后,我要问,因为我正在尝试制作一些简单的Android程序书,并开始使用Android 4'并收到此错误消息:

# ant debug
 Buildfile: build.xml

 BUILD FAILED
      NowRedux/build.xml:49: taskdef class com.android.ant.SetupTask cannot be found

从其他WWW搜索中,似乎上述情况可能是因为没有设置ANT_HOME和JAVA_HOME,我不知道。

3 个答案:

答案 0 :(得分:4)

export ANT_HOME=/usr/share/ant
export JAVA_HOME=/usr/lib/jvm/java

我不使用CentOS,但是我查看了RPM软件包“files”部分(yum是各种RPM前端/包装,如果我记得的话)。 http://rpmfind.net//linux/RPM/centos/6.3/i386/Packages/ant-1.7.1-13.el6.i686.html

另外,如果可以的话,我会坚持使用这些软件包,但是对于简单的Java东西,你也可以下载ant dist和Java dist并在你自己的某个地方解压缩它们(比如/ opt)然后使用那些dirs非包装方式。

一旦设置了变量,就可以确保它们与echo $ JAVA_HOME和echo $ ANT_HOME一起存在,依此类推。

最后,您可能希望在ServerFault上发布此内容,这似乎更合适,您可能会获得更好的Linux / Package相关响应(无论如何我都回答,如果它有帮助,但同样,我不是CentOS的家伙,并且在很长一段时间内都没有使用过YUM / RPM,因此所有的盐都是如此。

答案 1 :(得分:0)

  

对于java,/ usr / lib / jvm中有很多符号链接。而'java'实际上是一个符号链接,指向另一个链接,另一个链接最终指向/usr/lib/jvm/jre-1.7.0-openjdk/bin/java,这是一个实际文件。我应该将JAVA_HOME设置为什么?

对于你可能还没有的东西。

理论上,在这种情况下,您可以指向/usr/lib/jvm/jre-1.7.0-openjdk,即您将使用的java程序所在的Java目录。

然而:

  • 这是JRE,而不是JDK
  • Android SDK并未正式支持Java 7 - 系统要求适用于JDK 6

因此,我建议下载JDK 6(或等效的OpenJDK),安装它,并设置JAVA_HOME以指向其等效目录(可能是usr/lib/jvm/jre-1.7.0-openjdk的对等体)。您可能还需要运行相应的CentOS命令将这些符号链接切换到java以指向JDK中的符号链接。我不使用CentOS,所以我不能告诉你它们是什么,但是应该有一些“更新替代”命令来运行。

答案 2 :(得分:0)

我不确定这是否是解决问题的正确方法,或者它只是回避它,但我这样做了

rm MyProjects/NowRedux/build.xml
android update project --target 8 --path MyProjects/NowRedux

它有效。它基本上创建了一个新的build.xml文件,它不引用com.android.ant.SetupTask(所以,这个问题可能仍然会被破坏,但至少我发现了一个解决方法)