.net core 禁用nuget上的包类型

.net core 禁用nuget上的包类型,.net-core,azure-devops,asp.net-core-cli,.net Core,Azure Devops,Asp.net Core Cli,使用dotnetcore cli,将使用packagetype节点生成包,导致Visual Studio无法安装包。 在Visual Studio上生成包不会生成节点,但在dotnetcore cli上,它会在CI中生成,如下所示: <packageTypes> <packageType name="api" /> </packageTypes> 如何禁用它?我无法在构建管道中重现相同的问题 对我来说,只有在项目文件(csproj)中指

使用dotnetcore cli,将使用packagetype节点生成包,导致Visual Studio无法安装包。 在Visual Studio上生成包不会生成节点,但在dotnetcore cli上,它会在CI中生成,如下所示:

 <packageTypes>
      <packageType name="api" />
    </packageTypes>

如何禁用它?

我无法在构建管道中重现相同的问题

对我来说,只有在项目文件(csproj)中指定
api
或在
xx.nuspec
中定义
packageTypes
元素时,才会生成
PackageType

如何禁用它

因此,我建议您检查您的
项目文件
或项目文件夹中的
xx.nuspec
文件中是否定义了有关
PackageType
的任何定义。找到它,删除它,这个问题就不会发生

(api表示您或您团队中的某个人在团队项目中定义了PackageType,请参见,与
依赖关系
DotnetCliTool
不同,
api
显然是一个自定义的PackageType)

除上述内容外,您还可以尝试将参数
--无依赖项--force--无缓存--configuration Release-p:PackageType=“”
添加到
dotnet pack
任务中。在命令行中使用
-p:PackageType=“
可以禁用我的机器中的行为。希望能有所帮助:)

事实证明,“PackageType”在使用DotNetCli时变得类似于保留字,将变量名更改为“ApplicationType”,以避免在nuscpec中使用包类型

  Write-Output ("##vso[task.setvariable variable=PackageType;]$packageType")

如果我们在csproj文件中有类似于
api
的语句,或者我们在xx.nuspec中定义了PackageType,则会出现此问题。请先检查这两点。嗨,朋友,这个问题有更新吗?如果我们将
-p:PackageType=“”
添加到您的pack任务的参数中,结果会是什么?如果问题仍然存在,请让我知道:“Langeli MSFT HI朋友,谢谢你的支持,对我来说不起作用,但是我发现有一个全局变量“PACKAGETYPE”会在内部使用dotNETCLI。很高兴知道你已经解决了这个问题,请考虑接受它作为帮助更多成员的答案!只是提醒一下:)
  Write-Output ("##vso[task.setvariable variable=PackageType;]$packageType")