現在、TFSのビルド定義を更新しています。私たちのソリューションでビルドする必要があるプロジェクトを見つける必要があります。これは、ファイルをプロジェクトに追加し、それをフラグとして使用することによって行われます。現在、これは次のように行われています。MSBUILDを引き起こすTFSビルド定義のMatchPattern:エラーMSB1008:1つのプロジェクトしか指定できません
<mtbwa:FindMatchingFiles
DisplayName="Find ClickOnce Projects"
sap2010:WorkflowViewState.IdRef="FindMatchingFiles_2"
MatchPattern="[String.Format("{0}\**\ProjectToBuild.txt", Path.GetDirectoryName(localProject))]"
Result="[ClickOnceFlags]" />
異なるプロジェクトでは異なるフラグがあり、異なるビルドでは異なるビルドテンプレートファイルがあります。 MatchPatternプロパティから "ProjectToBuild.txt"を削除し、ビルド定義を定義するときに設定されるFlagNameという変数を追加します。このようにして、複数のビルド定義に対して同じビルドテンプレートファイルを使用します。
これは結果である:
<mtbwa:FindMatchingFiles
DisplayName="Find ClickOnce Projects"
sap2010:WorkflowViewState.IdRef="FindMatchingFiles_2"
MatchPattern="[String.Format("{0}\**\{1}", Path.GetDirectoryName(localProject), FlagFileName)]"
Result="[ClickOnceFlags]" />
I {1}を文字列形式でファイル名を変更し、そしてビルドテンプレートファイルにFlagFileNameという変数を追加しました。これをテストする
<x:Property Name="FlagFileName" Type="InArgument(x:String)" />
は、私は単に「ProjectToBuild.txt」にFlagFileName変数を設定して、前と同じ結果を期待して、ビルドを実行してみました。しかし、その代わりに、それは
MSBUILD : error MSB1008: Only one project can be specified.
を引用すると、いずれかがここで何が悪かったのかを私に助言することができ、ビルドを完了できませんでしたか?
ProjectToBuild.txtの詳細値は何ですか? OneDriveでビルドプロセステンプレートファイルを共有し、チェックするためのテストを行います。 –
この問題は解決しますか?そうでない場合は、OneDriveでビルドプロセステンプレートファイルを共有できますか? –
こんにちはstarain、申し訳ありませんが、ここにビルドファイルを投稿することはできません。しかし、私たちはエラーを修正してしまいましたが、上記のコマンドとは関係がありませんでした。ビルドプロセスで使用したプログラムの1つと何かが関係していました。 。それは最初にキャッチしなかった理由です:) –