gpt4 book ai didi

java - Ant 公然忽略 JAVA_HOME 环境变量

转载 作者:太空宇宙 更新时间:2023-11-03 12:59:32 25 4
gpt4 key购买 nike

我刚拿到最新版本的 Android SDK 并开始尝试使用它。与几乎所有其他遇到此问题的人不同,我正在运行 Linux,即 Linux Mint 13。我目前正在尝试使用 ant 编译一个 Hello World 程序,通过安装

sudo apt-get install ant

并在项目文件夹中运行:

ant debug

但是,它完全无法编译,最终吐出一个与设置 JAVA_HOME 有关的错误。我相应地修改了我的 ~/.bashrc 文件并重新启动,但我仍然收到错误:

Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "/usr/lib/jvm/java-7-openjdk-amd64/jre"

Total time: 1 second
jamie@jamie-ThinkPad-E525 ~/Downloads/adt-bundle-linux/sdk/tools/projects/new $ echo $JAVA_HOME
/usr/java/jdk1.7.0_05/

如您所见,它正躺在 dentry 里。

我发现很多关于这个问题的引用资料,但大多数人不是错误地设置了他们的 JAVA_HOME,就是将它设置为 JRE。显然,我两者都没有做过。

我还修改了项目文件夹的 ant.properties 文件,添加了这行

java.home=/usr/java/jdk1.7.0_05/

没用。

有没有其他人遇到/解决了这个问题,或者有任何想法?谢谢。

最佳答案

很有可能 ant 说的是实话,环境变量没有设置。机会是:

  • 你在“.bashrc”文件中输入了错误的语句,或者
  • 您没有正确地重新启动。

无论如何,您可以通过在运行 ant 命令之前在 shell 中运行 export 来验证这一点...并查看 JAVA_HOME变量被列出。


提示:

1) 这是错误的:

JAVA_HOME=/usr/java/jdk1.7.0_05/

这只会创建一个本地 shell 变量,并且本地 shell 变量不会传递给子进程(如 ant 命令)。应该是:

export JAVA_HOME=/usr/java/jdk1.7.0_05/

2) 尝试运行这个:

export JAVA_HOME=/usr/java/jdk1.7.0_05/
ant

3) 添加 java.home=/usr/java/jdk1.7.0_05/ 到 ant.properties 不会有帮助。 Ant 需要环境变量中的设置。

4) 计算机程序不会说谎。他们说的是他们看到的真相。或者更准确地说,除非代理人有 Intent ,否则说谎和说实话的整个概念是没有意义的。但关键是,如果你开始怀疑计算机程序试图欺骗你,你将很难调试东西。

(好吧,你是在开玩笑。但是许多面临故障排除问题的人采用了类似的非生产性方法;例如,假设每个棘手的 Java 问题都是编译器/语言/运行时损坏的证据。IMO - 它是值得提醒人们,这种想法可能非常无益....)

关于java - Ant 公然忽略 JAVA_HOME 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13888163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com