1

プロジェクトに Visual Studio Team Services を使用して CI を構成中です。ソリューション構造は次のようになります。

+MyApplications
   +.nuget
      NuGet.Config
   +Packages
   +AdminWebApp     ---> ("AdminWebApp" references the class library "AdminClassLib")
   +ClientWebApp    ---> ("ClientWebApp" references the class library "ClientClassLib")
   +AdminClassLib
   +ClientClassLib
   MyApplications.sln

1 つの Web アプリケーション (管理者) をビルドして後の段階で公開するビルド定義を作成しました。AdminWeb ビルド定義には、次のタスクがあります。

->ナゲットインストーラー

->Visual Studio ビルド

ここに画像の説明を入力

リポジトリは「AdminWebApp」のみにマップされます。

ビルド プロセスが失敗し、次のエラーが発生しました。

Error CS0246: The type or namespace name 'AdminClassLib' could not be found (are you missing a using directive or an assembly reference?)
Warning : The referenced project '..\AdminClassLib\AdminClassLib.csproj' does not exist.

Visual Studio では、すべてのプロジェクトをコンパイルして依存関係をビルドすると思うので、正常にビルドされます。

Visual Studio Team Services を使用してそれを行う方法を説明する役立つ情報はありますか?

4

1 に答える 1

1

参照されたプロジェクトがなければ、Team Build はビルドで生成されていないバイナリを見つけることができません。

.csproj が存在するか、以前のビルドからバイナリがまだ存在するため、おそらくローカルでビルドされます。

ビルド ワークスペースにプロジェクトを含めるか、NuGet パッケージとして発行するように AdminClassLib ビルド定義を構成します。VSTeam サービスのパッケージ管理機能を使用して、パッケージを保存できます。

その後、プライベート NuGet リポジトリから AdminClassLib の最新バージョンを取得するように WebUI を構成できます。

于 2016-04-29T21:20:17.303 に答える