2016-04-26 6 views
2

私たちのウェブサイトには作者が設定されていますので、 そしてパッケージを入手した後にいくつかのコマンドを実行します。作曲者のスクリプトはもう実行されていません

"scripts": { 
    "post-install-cmd": [ 
     "php -r \"shell_exec('cp -rf sourcefiles/. source/.');\"", 
     "php -r \"shell_exec('rm -rf sourcefiles');\"" 
    ] 
} 

これらの実行には、バージョン2016-02-24_11-44-07-45f6b37

を見つけていない。しかし、私は自分のアップデータを実行すると、最新バージョンのそれのブレーキにコードを取得するには、もはやもかかわらず、動作します何も変わっていません。

これは私たちが作曲家を更新できなくなることを意味するので、これは懸念の原因です。どんなアイデアが壊れているのですか?

多くのありがとうございます。

+0

は思っPHPの依存関係を削除ご協力いただきありがとうございます、の「CP -rf、ソースファイル/ソース/」十分一部ではありませんライン?残りはPHPでシェルをエミュレートするだけです。 –

+0

@TomášVotrubaそれは私が今持っているバージョンで動作しますが、それは最新の更新後に再び動作しません。 –

答えて

4

誰かが問題、

そうに語りました"post-install-cmd"でスクリプトを実行するだけです。これは1.0より前です。ロックファイルが存在する場合、updateコマンドを実行する場合はpost-install-cmdとpost-update-cmdでスクリプトを実行する必要があります。

ので、コードは次のようになります。

"scripts": { 
    "post-install-cmd": [ 
     "cp -rf sourcefiles/. source/.", 
     "rm -rf sourcefiles" 
    ], 
    "post-update-cmd": [ 
     "cp -rf sourcefiles/. source/.", 
     "rm -rf sourcefiles" 
    ] 
} 

1

実際のシェルコマンドはcp -rf sourcefiles/. source/.です。これをPHP関数shell_exec()の呼び出しにラッピングしています。この関数はPHPの助けなしには呼び出せないため、このソースを渡しますシェル上のPHPへのコード。

代替スクリプト提案:しかし

"scripts": { 
    "post-install-cmd": [ 
     "cp -rf sourcefiles/. source/.", 
     "rm -rf sourcefiles" 
    ] 
} 

、エラーに関する詳細を提供する必要があり、任意のメッセージは、などを取得githubの上

+0

ああ、今は、私が持っているバージョンでは動作しますが、最新バージョンでは動作しません。 コードを実行するだけではエラーメッセージが表示されません。非常に奇妙な。 –

関連する問題