如何在Ant中获取环境变量ProgramFiles(x86)

7

我可以在Ant中使用${env.PROGRAMFILES}获取%ProgramFiles%。但是我不知道怎样获取%ProgramFiles(x86)%

2个回答

8
使用 ${env.ProgramFiles(x86)}。该变量在大小写敏感方面与 env.PROGRAMFILES 不一致。请注意保持 HTML 标签不变。
[echo] env.ProgramFiles(x86) == C:\Program Files (x86)
[echo] env.PROGRAMFILES(x86) == ${env.PROGRAMFILES(x86)}
[echo] env.ProgramFiles      == ${env.ProgramFiles}
[echo] env.PROGRAMFILES      == C:\Program Files

对我来说,这两个变量的情况并不矛盾:它们分别是env.ProgramFiles和env.ProgramFiles(x86)。也许在新版本的Ant中有所改变?我使用的是Ant 1.9.4。 - Vlad

2

你尝试过${env.PROGRAMFILES(x86)}吗?(参见如何获取program files x86环境变量?

抱歉,我没有Windows机器来测试这个。

如果这不起作用,我建议在您的构建中添加以下属性任务:

<property environment="env"/>

在调试模式下运行ANT,以查看设置的值:

 ant -d 

感谢你的建议,马克。那个语法不起作用;然而,在输错的过程中,我发现${env.ProgramFiles(x86)}可以使用。这是一件奇怪的事情——${env.PROGRAMFILES}可以使用,但${env.ProgramFiles}却不能。因此,在这里语法存在一些不一致性。感谢你帮我找到解决方案! - Jerry

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