Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何通过Ant检索Composer?_Php_Ant_Composer Php - Fatal编程技术网

Php 如何通过Ant检索Composer?

Php 如何通过Ant检索Composer?,php,ant,composer-php,Php,Ant,Composer Php,我正在尝试让我的Ant脚本为我检索作曲家。是PHP的依赖性管理器。需要运行以下命令:“curl-s | php”,它将Composer.phar下载到我所在的目录中。当从终端运行时,这将按预期工作 如何为此设置Ant构建文件?到目前为止,我已经为“Composer Get”目标找到了这个段,但它不保存文件,只在我的命令shell中输出它: .... <target name="composerget" description="Composer update dependencie

我正在尝试让我的Ant脚本为我检索作曲家。是PHP的依赖性管理器。需要运行以下命令:“curl-s | php”,它将Composer.phar下载到我所在的目录中。当从终端运行时,这将按预期工作

如何为此设置Ant构建文件?到目前为止,我已经为“Composer Get”目标找到了这个段,但它不保存文件,只在我的命令shell中输出它:

....    
<target name="composerget" description="Composer update dependencies">
    <exec executable="curl"> 
        <arg line="-s" />
            <arg line="https://getcomposer.org/installer"/>
        <arg line="| php" />
    </exec>
  </target>
....
。。。。
....
非常感谢您的帮助。


<target name="composerget" description="Composer update dependencies">
    <exec executable="/bin/bash">
        <arg value="-c" />
        <arg value="curl -s https://getcomposer.org/installer | php" />
    </exec>
</target>

这将下载Composer安装程序,验证其签名,然后运行安装程序:

    <target name="composer" description="Install composer">
        <exec executable="wget">
            <arg value="-O" />
            <arg value="composer-setup.sig" />
            <arg value="https://composer.github.io/installer.sig" />
        </exec>
        <exec executable="wget">
            <arg value="-O" />
            <arg value="composer-setup.php" />
            <arg value="https://getcomposer.org/installer" />
        </exec>
        <exec executable="bash">
            <arg value="-c" />
            <arg value="awk '{print $$0 &quot;  composer-setup.php&quot;}' composer-setup.sig | sha384sum --check" />
        </exec>
        <exec executable="php">
            <arg value="composer-setup.php" />
        </exec>
        <exec executable="rm">
            <arg value="composer-setup.php" />
        </exec>
        <exec executable="rm">
            <arg value="composer-setup.sig" />
        </exec>
        <exec executable="mv">
            <arg value="composer.phar" />
            <arg value="composer" />
        </exec>
    </target>

可能是重复的谢谢。我最后使用了Ant的“GET”,显然也是这样。仍将此标记为已接受。这是不安全的,因为它在执行安装脚本之前未验证其签名。
all: vendor

vendor: composer composer.json composer.lock
        ./composer install

composer:
        wget -O composer-setup.sig https://composer.github.io/installer.sig
        wget -O composer-setup.php https://getcomposer.org/installer
        awk '{print $$0 "  composer-setup.php"}' composer-setup.sig | sha384sum --check
        php composer-setup.php --quiet
        rm composer-setup.*
        mv composer.phar composer