1

Facebook ウォッチマンと私の ember-cli アプリケーションで使用するビルド スクリプトを作成しようとしています。

私のビルドスクリプトは次のとおりです。

#!/bin/sh

cd ..
ember build
cd ..
cp ./ember-app/dist/index.html ./slim-app/app/templates/app.php
cp -r ./ember-app/dist/assets/ ./slim-app/public/assets/

そして、私のウォッチマンコマンドは次のとおりです。

watchman -- trigger $PWD/ember-app/app 'ember-build' '**' -- sh $PWD/build.sh

Watchman がトリガーされ、スクリプトが正常であることがわかりますが、ログを見ると、ember が見つからないというエラーが表示されます。sh build.sh実行するとすべてが正常に機能するため、理由はよくわかりません。

which ember残り火へのパスを決定し、それを直接使用するような方法はありますか? そのパスをコピーしてスクリプトに貼り付けることができることはわかっていwhich emberますが、使用しているノード/ nvmのバージョンに関係なくビルドスクリプトを機能させたいため、実際にはそうしたくありません。

また、これを行うためのより良い方法への提案も受け付けています。

4

1 に答える 1

1

PATHの問題のように聞こえます。watchman を最初に起動すると、launchd 統合のバグにより、現時点では OS X を除き、PATH 環境変数がキャプチャされます。 https://github.com/facebook/watchman/issues/68には、厄介な回避策の提案がいくつかあります。もう 1 つの可能性は、ビルド スクリプトに次の行を追加して PATH を設定することです。

# Add the path to ember in here somewhere
PATH=/usr/local/bin:$PATH
于 2015-02-25T05:04:58.370 に答える