我有一个指向 ant.bat (apache ant) 的快捷方式。执行该快捷方式总是返回失败错误(“build.xml 不存在”),而直接使用完整路径执行 ant.bat 则不会返回。
这在 cmd 和 PowerShell 中都会发生。
另外,在 PowerShell 中调用快捷方式总是会调用 cmd 窗口来运行程序,而不是在 PowerShell 内部运行它。
为什么会发生这种情况?如何使快捷方式的行为与程序本身一样?这可能吗,还是这是设计功能?
我正在使用 Windows 7 SP1
答案1
- 右键单击您的快捷方式
- 打开属性
- 打开“快捷方式”选项卡
- 将“开始于”字段更改为包含批处理文件的文件夹。
根据设计,它默认为快捷方式本身所在的文件夹。这样,快捷方式的行为确切地就像可执行文件一样,即启动时的当前工作目录就是它所在的目录。
顺便说一句,我的 Windows 已本地化,因此您必须单击和更改的内容的实际名称可能会不同(尤其是“开始于”字段)。