首页 > 解决方案 > Ant 构建失败,因为 Windows 10 权限不足

问题描述

我的 build.xml 文件在此目标标记上失败。

<property name="composer" value="C:/ProgramData/ComposerSetup/bin/"/>

<target name="composerInstall"
        unless="composerInstall.done"
        description="Installs composer dependencies">
    <exec executable="${composer}" taskname="composer">
        <arg value="install"/>
    </exec>
    <property name="composerInstall.done" value="true"/>
</target>

有这个错误...

C:\Users\me\spaceballs\build.xml:29: Execute failed:
java.io.IOException: Cannot run program "C:\ProgramData\ComposerSetup\bin\" (in directory "C:\Users\me\spaceballs"): 
CreateProcess error=5, Access is denied

我正在运行安装了 Docker Toolbox 的 Windows 10 家庭版。命令“docker-compose up”和“composer install”在命令行中运行良好,我尝试调整该 bin 目录的权限,希望能解决这个问题。

标签: xmlbuildantwindows-10

解决方案


能够使用此目标进行构建...

<target name="composerInstall"
        unless="composerInstall.done"
        description="Installs composer dependencies">
    <exec executable="${php}">
        <arg value="${composer}"/>
        <arg value="install"/>
    </exec>
    <property name="composerInstall.done" value="true"/>
</target>

添加了定义 $(php) 的这个目标

<target name="php-check">
    <condition property="php" value="php">
    <not>
        <isset property="${php}"/>
    </not>
    </condition>
</target>

作曲家被定义为...

<property name="composer" value="${basedir}/composer.phar"/>

推荐阅读