DeploymentUnpublishable web api with webjob
DeploymentUnpublishable web api with webjob
如何使用 TFS 2012 中的 teambuild 将我在 Visual Studio 2015 年创建的 asp.net web api 项目发布到 Azure?
问题似乎与 msbuild 有关。在本地和构建机器上,只要我在 C:\Program Files (x86)\Microsoft Visual Studio 14.0
中明确使用 msbuild,它就会工作。当我使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
时,它会给出以下输出,说明部署不可发布。
Target "_DeploymentUnpublishable: (TargetId:3)" in file "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets" from project "{poath}WebApi.csproj" (target "Publish" depends on it):
Task "Message" (TaskId:4)
Task Parameter:Text=Skipping unpublishable project. (TaskId:4)
Skipping unpublishable project. (TaskId:4)
Done executing task "Message". (TaskId:4)
当我从 TFS 排队构建时,我使用以下参数,
/t:Publish /ToolsVersion:14.0 /p:VisualStudioVersion=14.0 /p:ToolPath="C:\Program Files (x86)\MSBuild.0\Bin" /p:DeployOnBuild=true /p:PublishProfile=azureProfile.pubxml /p:Username=$user /p:Password=password
我从来没有找到解决这个问题的方法,但我能够让下面的 hack 起作用。
- 创建一个 csproj 文件
- 像下面这样添加一个新的
<Target>
<Target Name="PushPackages">
<Exec Command=""C:\Program Files (x86)\MSBuild.0\Bin\MSBuild.exe" {WebApiWithWebjob}.csproj /p:DeployOnBuild=true;PublishProfile=Dev.pubxml;VisualStudioVersion=14.0;Password={password}" />
</Target>
- 将 csproj 文件添加为要在构建定义中构建的最后一项
如何使用 TFS 2012 中的 teambuild 将我在 Visual Studio 2015 年创建的 asp.net web api 项目发布到 Azure?
问题似乎与 msbuild 有关。在本地和构建机器上,只要我在 C:\Program Files (x86)\Microsoft Visual Studio 14.0
中明确使用 msbuild,它就会工作。当我使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
时,它会给出以下输出,说明部署不可发布。
Target "_DeploymentUnpublishable: (TargetId:3)" in file "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets" from project "{poath}WebApi.csproj" (target "Publish" depends on it): Task "Message" (TaskId:4) Task Parameter:Text=Skipping unpublishable project. (TaskId:4) Skipping unpublishable project. (TaskId:4) Done executing task "Message". (TaskId:4)
当我从 TFS 排队构建时,我使用以下参数,
/t:Publish /ToolsVersion:14.0 /p:VisualStudioVersion=14.0 /p:ToolPath="C:\Program Files (x86)\MSBuild.0\Bin" /p:DeployOnBuild=true /p:PublishProfile=azureProfile.pubxml /p:Username=$user /p:Password=password
我从来没有找到解决这个问题的方法,但我能够让下面的 hack 起作用。
- 创建一个 csproj 文件
- 像下面这样添加一个新的
<Target>
<Target Name="PushPackages"> <Exec Command=""C:\Program Files (x86)\MSBuild.0\Bin\MSBuild.exe" {WebApiWithWebjob}.csproj /p:DeployOnBuild=true;PublishProfile=Dev.pubxml;VisualStudioVersion=14.0;Password={password}" /> </Target>
- 将 csproj 文件添加为要在构建定义中构建的最后一项