ant java 返回,如何为Eclipse / ANT更改JAVA_HOME

如何为Eclipse / ANT更改JAVA_HOME

我正在尝试使用ANT脚本签名jar文件。 我知道这必须指向JDK目录才能运行C:\program files\java\jdk\bin,但是当我回显java.home时,它将返回JRE目录。

对于javac来说这不是问题,因为我可以设置可执行路径。 但是,那对于signjar不存在。

如何更改java.home路径? 当我右键单击“我的电脑”并转到:

属性>高级>环境变量

“ PATH”变量正确指向JDK(C:\program files\java\jdk\bin)。

更新:现在,更改以下建议的PATH变量后,文件即可正确签名。

10个解决方案

49 votes

在Eclipse中,Ant java.home变量不基于Windows JAVA_HOME环境变量。 而是将其设置为项目的JRE的主目录。

要更改默认的JRE(例如,将其更改为JDK),您可以转到Windows-> Preferences ...,然后选择Java-> Installed JRE。

要仅更改单个项目的JRE,可以转到Project-> Properties,然后选择Java Build Path,然后选择Libraries选项卡。 找到JRE系统库,然后单击它,然后选择“编辑”,然后选择所需的JRE(或JDK)。

如果这不起作用,则在运行构建文件时,可以选择Run as-> Ant Build ...,然后单击JRE选项卡,选择单独的JRE并在此处指定所需的JRE。

Pace answered 2020-07-12T01:20:07Z

14 votes

对我来说,蚂蚁显然拒绝听任何有关eclipse默认设置,项目JDK的配置,而“蚂蚁之家”的建议却毫无吸引力-那里没有提到JDK。

但是,这可行:

Menu "Run" -> "External Tools" -> "External Tools Configuration".

Goto the node "Ant build", choose the ant buildfile in question.

Choose tab "JRE".

Select e.g. "Run in same JRE as workspace", or whatever you want.

stolsvik answered 2020-07-12T01:20:34Z

11 votes

在Windows下,您需要执行以下操作:

开始->控制面板->系统->高级->环境变量。

...,您需要设置JAVA_HOME(与您提到的PATH变量不同)来引用JDK主目录,而不是bin子目录; 例如 “ C:\ program files \ java \ jdk”。

Adamski answered 2020-07-12T01:21:03Z

8 votes

简单来说,要在Eclipse中将JAVA版本强制为Ant:

在Ant文件上使用“运行方式”选项,然后在“ JRE”选项卡中选择“外部工具配置”,定义要使用的JDK / JRE版本。

Mahran ALSHIEKH answered 2020-07-12T01:21:28Z

4 votes

另外,请务必设置您的296250743051010461952环境变量。 实际上,我通常会设置296250743051010461953,然后在系统的PATH环境变量之前添加字符串“ %JAVA_HOME%\bin”,这样,如果Java进行了升级或更改,则仅需更改2962507430510461461956变量。

并确保关闭所有命令提示符窗口或打开可能读取您的环境变量的应用程序,因为在重新启动应用程序之前,通常不会注意到对环境变量的更改。

Adam Batkin answered 2020-07-12T01:21:53Z

2 votes

除了验证可执行文件在您的路径中之外,您还应该确保Ant可以在JDK中找到tools.jar。 解决此问题的最简单方法是将tools.jar添加到Ant类路径中:

RqDeU.png

vallismortis answered 2020-07-12T01:22:13Z

1 votes

今天早上花了几个小时面对这个问题。 我可能是这些论坛上技术最少的人。 像请求者一样,我每次提示都设置%JAVA_HOME%时,每次看到这个非杰出的建议时都会咬我的舌头。 最后,我考虑了笔记本电脑的JRE是否比JDK早(因为JRE会定期自动更新),然后安装了最新的JDK。 差异是微小的,源于数周的不同版本。 我从jdk v 1.0865的错误开始。 JRE为1.0866。 安装后,我有了jdk v1.0874和等效的JRE。 那时,我指示Eclipse JRE专注于我的JDK,一切都很好。 我的java.home println甚至反映了正确的JRE。

如此多的反馈重复了错误的回答。 我强烈要求人们阅读其他人的反馈,以避免不必要的冗余。 保重,SG

Shane answered 2020-07-12T01:22:38Z

0 votes

如果使用的是Eclipse,请尝试以下操作:

右键单击ant构建文件,然后选择“属性”。

单击“运行/调试设置”,然后单击启动配置文件。 然后,您应该可以对其进行编辑。

单击“编辑”后,您应该看到一个带有“属性”选项卡的新窗口,该窗口将向您显示Ant构建属性的列表。 列表中有一个“ java.home”属性。 确保它指向正确的路径。

ezzadeen answered 2020-07-12T01:23:12Z

0 votes

转到环境变量并添加

JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_37

直到jdk路径(不包括bin文件夹)

现在将JAVA_HOME设置为PATH=%JAVA_HOME%\bin;的路径

这会将Java路径设置为所有正在使用Java的应用程序。

对于ANT使用,

ANT_HOME=C:\Program Files (x86)\apache-ant-1.8.2\bin;

并将ANT_HOME包含在PATH中,因此路径看起来像PATH=%JAVA_HOME%\bin;%ANT_HOME%;

AKD answered 2020-07-12T01:23:53Z

0 votes

设置环境变量

这是我经常忘记的部分。 由于您是手动安装Ant,因此还需要手动设置环境变量。

对于Windows XP:要在Windows XP上设置环境变量,请右键单击“我的电脑”,然后选择“属性”。 然后转到“高级”选项卡,然后单击底部的“环境变量”按钮。

对于Windows 7:要在Windows 7上设置环境变量,请右键单击“计算机”,然后选择“属性”。 单击高级系统设置,然后单击底部的环境变量按钮。

Windows XP和Windows 7的对话框相同。 确保您只使用系统变量,而不使用用户变量。

您绝对需要的唯一环境变量是JAVA_HOME,它告诉Ant JRE的位置。 如果您已安装JDK,则在Windows XP上可能是c:\Program Files\Java\jdk1.x.x\jre,而在Windows 7上可能是c:\Program Files(x86)\Java\jdk1.x.x\jre。您会注意到,两者的路径都有空格,这会引起问题。 您需要使用整齐的名称[3]而不是完整的名称。 因此,对于Windows XP,如果安装在Program Files(x86)文件夹中,则请使用C:\Progra~1\Java\jdk1.x.x\jre;对于Windows 7,请使用C:\Progra~2\Java\jdk1.6.0_26\jre(否则,请与Windows XP相同)。

仅此一项就足以使Ant工作,但是为了方便起见,最好将Ant二进制路径添加到PATH变量中。 此变量是用分号分隔的目录列表,用于搜索可执行文件。 为了能够在任何目录中运行ant,Windows需要同时知道ant二进制文件和java二进制文件的位置。 您需要将两者都添加到PATH变量的末尾。 对于Windows XP,您可能会添加以下内容:

;c:\java\ant\bin;C:\Progra~1\Java\jdk1.x.x\jre\bin

对于Windows 7,它将如下所示:

;c:\java\ant\bin;C:\Progra~2\Java\jdk1.x.x\jre\bin

完成了

完成并应用更改后,您需要打开一个新的命令提示符,以查看变量是否设置正确。 您应该能够简单地运行ant并看到类似以下内容:

Buildfile: build.xml does not exist!

Build failed

Shuvo Biswas answered 2020-07-12T01:24:55Z

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值