問題タブ [psake]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
420 参照

powershell - psake が msys_version で npm install を呼び出す

いくつかの NPM 依存関係がインストールされていることを確認する必要があり、それらのいくつかは node_gyp を使用してコンパイルします。つまり、「npm install --msvs_version=2013」を呼び出す必要があるため、node_gyp は vs.net 2013 コンパイラを使用します。しかし、何らかの理由で、これを psake タスクに追加すると失敗します。3 番目の引数が正しく渡されていないようです。

「./psake npmInstall」を呼び出すと実行されますが、node_gyp は 3 番目の引数を取得していないため失敗します。エラーはかなり明確に見えます-2013 CPP ファイルを使用していません。V110 と表示されている場合は、V120 と表示する必要があります (通常は --msv_version2013 を呼び出すことで解決されます)。

C:\Projects\MyProject\app\SubProject\node_modules\browser-sync\node_modules\socket.io\node_modules\engine.io\node_modules\ws\build\bufferutil.vcxproj(18,3): エラー MSB4019: インポートされたプロジェクト「C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Default.props」が見つかりませんでした。宣言内のパスが正しいこと、およびファイルがディスク上に存在することを確認してください。

コマンドを直接 powershell で実行すると、問題なく動作します。PowerShell でスクリプトの一部としてコマンドを実行すると、正常に動作します。Powershell で「Import-Module path/to/psake.psm1; exec {npm install --msvs_version=2013}」を直接実行しても問題なく動作します。psake タスクの一部としてのみ失敗します。

ここで何が起こっているのでしょうか?

0 投票する
1 に答える
228 参照

powershell - PowerShell 関数で posh-git を使用してリポジトリの状態を確認するにはどうすればよいですか?

「git clean -xdf」を呼び出す前に、ユーザーに次のメッセージを表示する psake オーケストレーションがあります。

すべての未追跡ファイルを削除しようとしています。「Y」を押して続行するか、他のキーを押してキャンセルします。

clean -xdf を実行すると削除される追跡されていないファイルがリポジトリにある場合にのみ、このプロンプトを表示したいと考えています。

「リポジトリに追跡されていない変更はありますか?」という質問に答えるために posh-git を使用する方法に関する提案はありますか? PowerShellから?

参考までに、既存のオーケストレーションを次に示します...

0 投票する
2 に答える
1649 参照

powershell - 絶対パス + 相対パスまたは絶対パスから新しい絶対パスを作成する

psake を使用してビルド スクリプトを作成しています。現在の作業ディレクトリから、相対パスまたは絶対パスのいずれかの入力パスを使用して絶対パスを作成する必要があります。

現在地がC:\MyProject\Build

これはひどいC:\MyProject\Build\.\outputものではありませんが、なしでお願いし.\ます。を使用することでその問題を解決できPath.GetFullPathます。

絶対パスを提供できるようにしたいときに問題が発生します

代わりC:\MyProject\Build\outputに必要な場所に を与えます。C:\output

代わりC:\MyProject\Build\F:\outputに必要な場所に を与えます。F:\output

を使用してみResolve-Pathましたが、これは常にパスが存在しないと不平を言います。

Join-Path使用するコマンドレットではないと思いますが、やりたいことを行う方法に関するリソースを見つけることができませんでした。私が必要とすることを達成するための簡単な一行はありますか?

0 投票する
10 に答える
1776 参照

c# - Visual Studio プロジェクトの整合性をチェックする

多数のプロジェクト ファイルを含む大規模な Visual Studio ソリューションがあります。すべてのプロジェクトがプロパティ設定で特定の規則に従っていることを確認し、新しいプロジェクトが追加された場合にこれらの規則を適用するにはどうすればよいでしょうか。たとえば、すべてのプロジェクトに以下があることを確認します。

私自身、以下の回答に追加する 2 つの方法を知っていますが、人々がこの種のプロジェクト テストをどのように行っているのか疑問に思っていました。新しいものを発明したり、ゼロから作成したりする必要があるのではなく、ライブラリやビルドタスクなどの利用可能なソリューションについて学ぶことに特に興味があります。

0 投票する
0 に答える
123 参照

arrays - psake スクリプトで配列パラメーターをオーバーライドする方法

私の psake default.ps1 が次のようになっていると仮定しましょう:

時々このタスクを実行するときに、どのアセンブリをマージするかを変更したいと思います。例えば ​​:

何らかの理由で、文字列を配列として解析できないため、上記のコマンドは機能しません。手動解析と文字列から配列への変換なしでこれを行う方法はありますか?