如何在没有平台版本的情况下从 nuspec 构建 nuget 包?

问题描述 投票:0回答:1

我正在尝试仅为由第 3 方包组成的依赖项构建一个 nuget 包。如果我从头开始,可能带有所需程序集的空项目可能是一个更好的主意,但我已经有可用的 nuspec 文件,所以我不想为未来的安全创建自己的项目。这是一个这样的 nuspec 文件:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
  <metadata>
    <id>MyCompany.TestPack</id>
    <tags>Test</tags>
    <version>1.0.0</version>
    <authors>Example Inc.</authors>
    <owners>Example Inc.</owners>
    <description>This package provides data.</description>
    <language>en-US</language>
    <licenseUrl>https://example.com</licenseUrl>
    <requireLicenseAcceptance>true</requireLicenseAcceptance>
    <dependencies>
      <group targetFramework="net6.0-windows">
        <dependency id="DevExpress.Data" version="[22.2.9]" />
      </group>
    </dependencies>
    <frameworkReferences />
    <developmentDependency>false</developmentDependency>
  </metadata>
</package>

这是构建包的 nuget 命令:

nuget pack my.package.nuspec

问题是它失败并出现错误:

NU1012:某些依赖项组 TFM 缺少平台版本: net6.0-windows

我还尝试使用 nuget 命令 /p:WindowsTargetPlatformVersion=7 但没有成功。
但如果我将 targetFramework="net6.0-windows" 更改为 "net6.0-windows7.0" 或 10 等,它就可以工作。
我的问题是,如何在不提供平台版本的情况下从上述 nuspec 构建软件包?或者如果有必要的话我该如何通过nuget命令设置它?

.net-core nuget-package nuget-spec
1个回答
0
投票

使用nuget.exe版本5.8.1https://dist.nuget.org/win-x86-commandline/v5.8.1/nuget.exe),指定没有限制平台版本。

© www.soinside.com 2019 - 2024. All rights reserved.