web-dev-qa-db-ja.com

古いバージョンのMicrosoft.Data.Tools.Schema.Sqlを探しているビルドでMSBuildが失敗する

2012年のビルドサーバーをインストールして構成した後、Azureの継続的デプロイを試みました。

TFS2012をインストールしています。サーバー上のビルドコントローラーと単一のエージェント。クラウドTFS2012に接続しています。この場合、AzureWebサイトも使用します。ビルドサーバーにVisualStudio 2012ProfessionalとSQLServer2012をインストールしています。プロジェクトにはデータベースがないので、なぜ10.3を探しているのかわかりません。そのバージョンのサーバーは表示されませんが、11.0.2861.0は表示されます。新しいバージョンを確認するために変更する必要のある構成はありますか?また、2012年6月にビルドサーバーにSSDTをインストールしました。コンパイルは成功し、実際にすべてのファイルを移動してパッケージを作成します。しかし、このエラーが発生し、ビルドイベントが失敗します。何が足りないのですか?

次のエラーメッセージが表示されます。

Exception Message: The type initializer for 'Microsoft.Web.Deployment.DeploymentManager' threw an exception. (type TypeInitializationException)
Exception Stack Trace: 
Server stack trace: 
   at Microsoft.Web.Deployment.DeploymentProviderSettingCollection..ctor(String factoryName)
   at Microsoft.Web.Deployment.DeploymentProviderOptions..ctor(String factoryName)
   at Microsoft.Web.Deployment.DeploymentProviderOptions..ctor(DeploymentWellKnownProvider wellKnownProvider)
   at Microsoft.TeamFoundation.Deployment.Workflow.Activities.MSDeployWorker.RunCommand(String publishEndpoint, String targetSite, String userName, String password, String packagePath, String setParametersPath, Boolean allowUntrustedCertificates)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(iMessage msg, IMessageSink replySink)

Exception rethrown at [0]: 
   at System.Activities.Statements.Throw.Execute(CodeActivityContext context)
   at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager)
   at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

Inner Exception Details:

Exception Message: The type initializer for 'Microsoft.Web.Deployment.BuiltInTypesCache' threw an exception. (type TypeInitializationException)
Exception Stack Trace:    at Microsoft.Web.Deployment.DeploymentProviderFactoryCollection.LoadFromRegistry()
   at Microsoft.Web.Deployment.DeploymentManager.LoadDeploymentManagerSettings()
   at Microsoft.Web.Deployment.DeploymentManager..cctor()

Inner Exception Details:

Exception Message: The provider 'Microsoft.Data.Tools.Schema.MsDeploy.MsDeployProviderFactory' could not be loaded. (type DeploymentException)
Exception Stack Trace:    at Microsoft.Web.Deployment.DeploymentProviderFactory.Create(Type type)
   at Microsoft.Web.Deployment.BuiltInTypesCache.InspectTypesForWebDeployAttributes(IEnumerable`1 types, String dllName)
   at Microsoft.Web.Deployment.BuiltInTypesCache..cctor()

Inner Exception Details:

Exception Message: The type 'Microsoft.Data.Tools.Schema.MsDeploy.MsDeployProviderFactory' could not be loaded. The configuration settings may not be valid. (type DeploymentException)
Exception Stack Trace:    at Microsoft.Web.Deployment.ReflectionHelper.CreateInstanceT
   at Microsoft.Web.Deployment.DeploymentProviderFactory.Create(Type type)

Inner Exception Details:

Exception Message: The type initializer for 'Microsoft.Data.Tools.Schema.MsDeploy.MsDeployProviderBaseProviderFactory' threw an exception. (type TypeInitializationException)
Exception Stack Trace:    at System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(RuntimeType objectType)
   at System.Runtime.Remoting.Activation.ActivationServices.CreateInstance(RuntimeType serverType)
   at System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(RuntimeType serverType, Object[] props, Boolean bNewObj)
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Activator.CreateInstance(Type type, Object[] args)
   at Microsoft.Web.Deployment.ReflectionHelper.CreateInstanceT

Inner Exception Details:

Exception Message: Could not load file or Assembly 'Microsoft.Data.Tools.Schema.Sql, Version=10.3.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. (type FileNotFoundException)
Exception Stack Trace:    at Microsoft.Data.Tools.Schema.MsDeploy.MsDeployProviderBaseProviderFactory..cctor()
5
gmcalab

レジストリから次のキーを削除し、問題を修正しました。

HKLM\Software\Microsoft\IIS Extensions\msdeploy\3\extensibility
HKLM\Software\Wow6432Node\Microsoft\IIS Extensions\msdeploy\3\extensibility
6
gmcalab