【问题标题】:NuGet Dependency Framework Targeting not working when packaging using the .csproj使用 .csproj 打包时,NuGet 依赖框架定位不起作用
【发布时间】:2014-12-18 02:22:22
【问题描述】:

我有一个如下所示的 NuGet .nuspec:

    <?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/10/nuspec.xsd">
    <metadata>
        <id>XXXXXXXXX</id>
        <version>1.0.0-alpha</version>
        <authors>XXXXXXXXX</authors>
        <owners>XXXXXXXXXXX</owners>
        <requireLicenseAcceptance>false</requireLicenseAcceptance>
        <description>XXXXXXXXXXXXXXXXXXX</description>
        <copyright>XXXXX</copyright>
        <dependencies>
            <group>
                <dependency id="Dependency1" version="1.0.0" />
            </group>
            <group targetFramework=".NETFramework3.5">
                <dependency id="Dependency2" version="3.9.71" />
            </group>
            <group targetFramework=".NETFramework4.0">
                <dependency id="Dependency3" version="4.0.30" />
                <dependency id="Dependency4" version="4.0.30" />
                <dependency id="Dependency5" version="4.0.30" />
                <dependency id="Dependency6" version="4.0.30" />
            </group>
        </dependencies>
    </metadata>
    <files>
        <file src=".XXX.Net35\bin\Release\XXX.dll" target="lib\net35" />
    </files>
</package>

当我通过以下方式将 NuGet 包与 nuspec 打包时:

nuget pack XXXXXX.nuspec

一切都很好,依赖组都在那里。如果我用 csproj 打包,例如:

nuget pack XXXXXX.csproj

所有依赖都集中在一个目标中,而不是成组。我真的想要使用 $id$ 和 $version$ 变量的功能,并能够根据目标框架进行依赖组。

有人知道解决办法吗?

【问题讨论】:

    标签: c# .net nuget


    【解决方案1】:

    确保您转到包含您的.csproj 文件的目录并执行nuget spec 以根据您的.csproj 创建一个.nuspec 文件。调查它并确保它看起来像你想要的那样,为各种目标框架定制它,然后nuget pack XXXXXX.csproj 让它构建并尊重.nuspec

    【讨论】:

    • 我一直在度假,但会在假期后调查此事。感谢您的回复!
    • nuget 规范刚刚制作了一个空白的 nuspec 文件。它让我回到了第 1 点。我们最终编写了一个 powershell 脚本,通过 pack 命令中的 -version 参数设置版本。
    猜你喜欢
    • 2016-03-13
    • 2019-03-19
    • 2015-10-13
    • 1970-01-01
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    相关资源
    最近更新 更多