Continuous integration VSTS构建中的混合目标
我们有一个Continuous integration VSTS构建中的混合目标,continuous-integration,.net-core,azure-devops,.net-4.6,Continuous Integration,.net Core,Azure Devops,.net 4.6,我们有一个aspnet核心应用程序,它由几个.net标准库、两个aspnet核心mvc应用程序和一个.net框架控制台应用程序组成 这些都是在Visual Studio中的解决方案中成功构建的,也可以使用msbuild/dotnet build命令单独构建 我们现在正试图实现与VST的持续集成/构建 我们发现,aspnet coreweb应用程序构建成功,但.net framework控制台应用程序失败,并出现如下多条错误消息: 2017-12-24T07:20:26.4090447Z C:\P
aspnet核心
应用程序,它由几个.net标准
库、两个aspnet核心mvc
应用程序和一个.net框架
控制台应用程序组成
这些都是在Visual Studio中的解决方案中成功构建的,也可以使用msbuild
/dotnet build
命令单独构建
我们现在正试图实现与VST的持续集成/构建
我们发现,aspnet core
web应用程序构建成功,但.net framework
控制台应用程序失败,并出现如下多条错误消息:
2017-12-24T07:20:26.4090447Z C:\Program
Files\dotnet\sdk\2.0.3\Microsoft.Common.CurrentVersion.targets(1988,5):
warning MSB3245: Could not resolve this reference. Could not locate the
assembly "Xxx.Core, Version=1.1.0.0, Culture=neutral,
processorArchitecture=MSIL". Check to make sure the assembly exists on disk.
If this reference is required by your code, you may get compilation errors.
[d:\a\1\s\WinApps\ListBuilder\ListBuilder.csproj]
控制台应用程序遵循与web应用程序相同的文件夹结构,但似乎找不到任何引用的包
我们的代理队列是托管的VS2017
我们有两个VSTS任务:Restore
和Build
来自asp.net核心
构建模板
如有必要,如果我们可以将console应用程序从生成中排除,我们将非常高兴。由于存在通用的.net framework项目和.net核心项目,并且您希望将它们一起生成,因此您需要使用Visual Studio生成任务 因此,删除.Net Core Restore和.Net Core build tasks并添加NuGet工具安装程序(4.3.0)、Nuget Restore和Visual Studio build任务(Visual Studio版本:最新或Visual Studio 2017) 如果要在生成期间生成部署包,可以指定如下MSBuild参数:
/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)"
还原任务是.net core还原任务还是“正常”NuGet还原任务?它们是
asp.net core
生成模板中的dotnet core
任务。我们将尝试添加“正常”nuget还原任务。您是否希望dotnet core
build任务与框架控制台应用程序配合使用?是的,它支持核心工具中不存在的packages.config。因此,请将visual studio build用于经典项目。您是否解决了此问题?
/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)"