1

psake バージョン 4.2.0 をインストールしました。

これを入れましたdefault.ps1

properties {
    $message = "Task A executed"
}

task default -depends taskA

task taskA {
    write-host $taskAmessage
}

を実行するInvoke-psake taskAと、タスクは期待どおりに実行されます。

イントロダクションInvoke-psakeのようにパラメータなしで実行すると、次のエラーが発生します。

Test-Path : Cannot bind argument to parameter 'Path' because it is an empty string.
At D:\animesh\software\utilities\psake-master\psake-master\psake.psm1:291 char:26
+         Assert (test-path <<<<  $buildFile -pathType Leaf) ($msgs.error_build_file_not_found -f $buildFile)
    + CategoryInfo          : InvalidData: (:) [Test-Path], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorEmptyStringNotAllowed,Microsoft.PowerShell.Commands.TestPathCommand

私の powershell プロファイルでは、Powershellpsakeを実行するたびにモジュールをインポートしています。

import-module "D:\animesh\software\utilities\psake-master\psake-master\psake.psm1"

プロジェクトページで提起されたこの正確な問題がありますが、解決されていないようです。これを修正するにはどうすればよいですか?

4

1 に答える 1

1

モジュールコードに問題があるようです。psake.psm1の269行目を次のように変更する必要があるかもしれません。

[Parameter(Position = 0, Mandatory = 0)][string] $buildFile=$psake.config_default.buildFileName
于 2012-12-10T14:49:34.893 に答える