1

ビルドの一部として、コマンド ライン チェックの評価時にスキップしたいターゲットがあります。

<Target Name="RunSomeDependencyVerification" Condition="!Exists('$(SkipVerification)')">
....

次のように、コンソールからスキップ検証を渡したいです。

msbuild mybuild.dev.proj /p:SkipVerification

私のビルド スクリプトは、「SkipVerification」プロパティが定義されていないと文句を言います。のドキュメントを見つけました<PropertyGroup />が、プロパティを定義するだけでなく、値も設定しているようです。これは私が求めているものではありません。

私は何が欠けていますか?

4

2 に答える 2

1

元の msbuild ファイルで既定値を使用してプロパティを定義します。

<PropertyGroup>
    <SkipVerification Condition="'$(SkipVerification)'==''">False</SkipVerification>
</PropertyGroup>

指定したかどうかに関係なく、「存在する」チェックは「propertyname」に対するものではありません。プロパティの値を確認します。

<Target Name="RunSomeDependencyVerification" Condition="'$(SkipVerification)'=='True'">

それからこれ。

/p:Configuration=Debug;SkipVerification=True
于 2013-07-22T17:44:54.427 に答える
0

msbuildSkipVerificationは、定義されていないため、定義されていないと言いExistsます。プロパティではなく、ファイルまたはディレクトリ用です。代わりにこれを試してください:

msbuild mybuild.dev.proj /p:SkipVerification=true

次に、値を確認します。

<Target Name="RunSomeDependencyVerification"
        Condition="'$(SkipVerification)'!='true')">
于 2013-07-22T17:44:23.140 に答える