1

すべてのtypescriptファイルをコンパイルしてバンドルする小さなPowerShellスクリプトを作成しました。PowerShellエディター内からスクリプトを実行すると問題なく動作しますが、ビルド後のイベントとしてスクリプトを実行しようとすると、ビルドがハングします。

スクリプトからバンドラー行を削除するとすぐに、ビルドが機能します(つまり、tsファイルをコンパイルします)

この動作の原因は何ですか?

$TypeScripts = get-childitem "$(get-location)\RockyMountainArts.Web\scripts\src\*\*.ts" -recurse

foreach ($tsFile in $TypeScripts){
    tsc $tsFile
}

&"$(get-location)\RockyMountainArts.Web\bundler\node.exe" "$(get-location)\RockyMountainArts.Web\bundler\bundler.js" "$(get-location)\RockyMountainArts.Web\CSS" "$(get-location)\RockyMountainArts.Web\Scripts"
4

1 に答える 1

1

PowerShellでソリューションディレクトリを取得する別の方法を理解する必要があることがわかりました。

私のpsスクリプトは$(get-location)、現在のディレクトリを取得するために使用します。

スクリプトはソリューションのルートにあるため、これはスクリプトエディターから実行すると正常に機能しますが、「新しい」現在のディレクトリがbinフォルダーにあるため、ビルド後は正常に機能しません。

私の現在の回避策は、絶対パスを使用することです。

于 2012-12-11T07:08:33.313 に答える