【问题标题】:ANT delete task and Windows 7 UAC permissionsANT 删除任务和 Windows 7 UAC 权限
【发布时间】:2010-03-05 01:43:40
【问题描述】:

当我对文件夹的内容进行简单删除时,

<delete includeemptydirs="true">
  <fileset dir="${developmentenvironment.www.dir}" includes="**/*"/>
</delete>

我收到一个错误:

C:\Users\...\build.xml:42: Unable to delete file C:\...\www\appserv\AUTHORS.txt  

当我尝试删除操作系统中的文件时,它需要提升权限。

我也无法通过这样做获得 UAC 提示:

<exec executable="cmd">
  <arg value="/c del ./*.*"/>
</exec> 

使用删除任务时,ANT 能否提示提升 UAC 权限?

【问题讨论】:

    标签: file-io ant windows-7 permissions uac


    【解决方案1】:

    由于 Ant 被设计为独立于平台的构建系统,我真的怀疑它是否提供了这种非常以 Windows 为中心的功能。您能否以更合适的用户身份开始构建任务,例如,具有修改和删除完成构建所需文件的权限的用户?或者,您可以将其运行的用户递归地添加到您要删除的目录上的权限吗?

    【讨论】:

    • 如果我没记错的话,Ubuntu 也有一个提升的权限方案。不过我可能是错的。我认为你最终是对的。我将不得不以提升的用户身份运行构建。谢谢!
    • Ubuntu 就像 'sudo' 隐藏在一个对话框下。没有人会在需要 sudo 写入的树中进行软件开发。
    【解决方案2】:

    Ant 只是一个 Java 程序。没有 JRE 会运行它,我知道它会与 UAC 混淆。

    【讨论】:

      猜你喜欢
      • 2011-01-04
      • 1970-01-01
      • 2011-07-20
      • 2011-06-19
      • 1970-01-01
      • 2011-10-31
      • 1970-01-01
      • 1970-01-01
      • 2011-02-11
      相关资源
      最近更新 更多