teamcity错误MSB4057:项目中不存在目标“pack”

时间:2018-03-13 10:02:39

标签: .net-core teamcity nuget-package

无法使用4.7框架为Dot Net Core项目创建包。我在teamcity中使用msbuild / t:pack / p:COnfiguration = Release命令来创建一个包。

<Project Sdk="Microsoft.NET.Sdk">
 <PropertyGroup>
 <TargetFramework>net471</TargetFramework>
 </PropertyGroup>
</Project> 

NuGet.Build.Tasks.Pack安装在项目中。

我们只使用.net核心csproj结构,但不使用.net核心作为目标框架,因此无法通过.net CLI编译 - 这就是我们通过MSBuild而不是.net CLI构建项目的原因 请指导如何为此类项目创建包。

1 个答案:

答案 0 :(得分:0)

似乎TeamCity使用msbuild进行操作的方式,默认情况下会创建包装器脚本,然后调用该脚本。包装器运行的某种方式阻止了它正常工作。

TeamCity MSBUILD Docs上有一个关于实现的说明,您可以禁用包装器。我试过了,看起来好像可行。

要禁用包装器行为,将 teamcity.msbuild.generateWrappingScript 设置为 false 。 我通过将 teamcity.msbuild.generateWrappingScript 添加为构建配置上的配置参数,并将其值设置为“ false”来实现此目的。然后,我重新运行该构建,它的行为符合预期。