问题标签 [nuspec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
603 浏览

nuget - 如何为 Nuget 中的源文件指定不同的目标目录安装?

这是我的 Web 开发项目的结构:

  • 网络项目
    • 内容
    • 我的主题
      • 内容
        • 较少的
        • 脚本
        • 等等

当我安装 Less Bootstrap Package 时,它​​总是将文件安装在内容目录中:

  • 网络项目
    • 内容
      • 引导程序
    • 我的主题
      • 内容
        • 较少的
        • 脚本
        • 等等

我希望它在这里安装文件:

  • 网络项目
    • 内容
      • 引导程序
    • 我的主题
      • 内容
        • 较少的
          • alerts.less
          • 无徽章
          • 等等
        • 脚本
        • 等等

有没有办法指定源文件的目标路径?我没有看到任何关于它的文档,我看到的唯一问题与指定 .package 文件的安装位置有关。我很难相信这个选项不存在,尤其是考虑到开发人员对如何组织源代码树非常挑剔。

0 投票
1 回答
546 浏览

nuget - 将本地 html 文件指定为在 .nuspec

我正在尝试创建一个 NuGet 包,并且在 .nuspec 文件中,我正在尝试使用本地许可证文件而不是 .nuspec 文件中标记所要求的许可证 URL。有没有办法做到这一点?创建许可包是否必须具有许可 URL?

谢谢。

0 投票
4 回答
26181 浏览

nuget - nuget 规范依赖项,获取最新版本?

在我看到的nuspec 版本控制文档中

我有一个packages.config看起来像这样的

我想将版本更改为“最新”。

我都试过了

但两者都导致Unable to parse version value '' from 'packages.config'.

我正在使用 Nuget.exe 2.8.2

0 投票
1 回答
1029 浏览

file - NuGet 文件标签中的可选或条件文件夹?

我想做一些 MsBuild 有的事情:设置 .nuspec 文件中引用的文件的条件。

基本上它看起来像这样:

有没有办法做到这一点?可以有多个按特定条件分组的文件夹和文件。另请注意,如果存在某些文件夹,则应对其进行扫描。

谢谢, CssaBee

0 投票
1 回答
435 浏览

nuget - NuGet - 无法将 .nuspec 文件本身复制到目标项目

我有一个 .nuspec 文件,如下所示。在文件部分,我试图复制 .nuspec 文件本身,所以当安装包时,它会在目标项目的“组件/tst”目录中结束(因此 .nuspec 中包含的依赖项信息是在目标项目中可用):

问题是当我创建 .nupkg 文件(使用 nuget pack)时,tst.nuspec 文件没有复制到包内的 content\Components\tst\tst.dependencies 文件中。而且当我安装包时, tst.nuspec 文件不会复制到目标项目中。

文件部分中的其他文件(script.js 和 style.less)被很好地复制。

有什么办法可以说服 nuget pack 复制 .​​nuspec 文件本身以及其他文件?如果没有,将 .nuspec 文件复制到目标项目的最佳方法是什么?

0 投票
2 回答
631 浏览

.net - Nuget $project.Object.References.Add fails in install PS-script

I have my nuget package, lets call it A that has a dependency on another public package Nunit.Runners

When A depends on Nunit.Runners it doesn't add the assemblies I need into my project, the assemblies I depend on are in NUnit.Runners.2.6.3\tools\lib so, because nuget only adds referces to assemblies in lib, I think I need to add a Install.ps1 to my nuget package

I now have

But it's throwing

Any pointers as to why this is throwing on "Add" super welcome

My install.ps1 (here for reference)

BTW I just need to reference those two assemblies, I don't need to reference nunit.framework

NOTE: I did see this thread in codeplex but nothing there pointed to a solution (ie the project is not client profile and the assemblies shouldn't be on the GAC)

0 投票
1 回答
12278 浏览

c#-4.0 - 使用 GUI 从 csproj 创建 nuspec

我有一个 C# 项目,其中包含来自我的解决方案中项目的 2 个项目引用。

它还具有来自我的 NuGet 存储库中的包的 5 个 NuGet 包引用。鉴于.csproj,如何nuspec使用 NuGet 项目资源管理器工具生成或创建文件?

以及如何验证这nuspec是否确实正确?

0 投票
1 回答
1327 浏览

nuget - 创作必须添加对旧框架程序集的引用的 NuGet 包的正确方法是什么?

我正在尝试创作一个可以添加到 .net 4.0 或 4.5 项目中的 NuGet 包。包中包含的实际程序集都是针对 .net 3.5 构建的,除了针对 .net 4.0 构建的程序集之外 - 我无法控制这一点,因此我必须“按原样”使用程序集。

我正在处理的项目目标是 .net 4.5.2,并且需要引用这些“旧”程序集。我通过在我的 App.config 中添加以下内容启用了“旧版运行时激活”:

这一切似乎都运作良好。现在,我希望将我的“旧”程序集打包到 NuGet 包中。我的 .nuspec 文件如下所示:

我的期望是,当我将此包添加到我的 .net 4.5.2 项目中时,它会执行以下操作:

  1. 引用 3.5 程序集,因为它们位于未指定任何框架的“默认”组中
  2. 引用 4.0 程序集,因为它是在以 4.5.2 为目标的组中指定的

事情并没有像我预期的那样顺利。我实际上得到的是对 4.0 程序集的单一引用。

创作我想要的行为的正确方法是什么?如何使 NuGet 包确保<startup useLegacyV2RuntimeActivationPolicy="true">标记存在于 App.config 文件中?

0 投票
0 回答
561 浏览

c# - 以编程方式生成没有 NuGet.Core 的 NuGet 包

我希望在不使用lib.nupkgNuGet.Corenuget.exe pack.

据我了解,本质上生成一个.nupkg包含单个文件的文件应该是创建开放包格式文件的以下“简单步骤”:

  1. 验证 nuspec(它将以编程方式生成,但很高兴知道这样一个库/处理阶段的输出是“干净的”)
  2. 在包中包含.nuspec文件(无需签名或操作)
  3. 在包中提到的位置包含链接的文件.nuspec

nuget pack如果有人可以填写命令行会执行的任何缺失步骤(是否需要签名等),我将不胜感激

验证我在上述步骤中没有遗漏任何内容是最有价值的,尽管代码也没有害处。


更多上下文:目前,下游消费者只是属于同一代码库的一部分的代码(也不使用NuGet.Core)。现在这并不重要,但随着时间的推移,可以想象 VS 和/或第三方工具可能需要能够对生成的包进行内省。

附加上下文

[通过@bricelam]:.nupkg文件是标准的文件 - 即遵循特定模式的 Zip 文件具有清单等。

[通过@maartenba ]:有一个Mono implSystem.IO.Packaging [这很好,因为解决方案需要跨平台工作]。

0 投票
2 回答
4522 浏览

nuget - 未安装 Nuget 依赖项

我在 IIS 上本地运行私有 Nuget 服务器。我正在创建包并使用 nuget.exe 通过 commadline 将它们全部上传(稍后我必须将它放在构建服务器上,因此是命令行)。但是,我遇到了一个问题。

我正在尝试声明依赖项。我在 .csproj 文件所在的文件夹中生成 nuspec 文件。然后我手动编辑 nuspec 文件以将其添加到元数据标记下:

Nuget 服务器上存在 DemoProject 版本 2.0.0.0。我正在为其创建包的项目 MyProj.csproj 没有对通过 Visual Studio 添加到其中的 DemoProject 的引用。只是在打包时我想创建依赖项。这听起来很奇怪,但需要进行一些初始验证。

然后我运行打包命令:

"C:\nuget\NuGet.exe" 包 MyProj.csproj -IncludeReferencedProjects -Prop Configuration=Release

然后我使用命令行将它推送到 NuGet 服务器。当我通过命令行进行安装时,安装位置只存在 MyProj 包。

当我使用 Nuget 包资源管理器并创建包时,我可以使用包依赖关系编辑器来指定依赖关系。它询问我本地 Nuget 服务器的 URL,然后添加依赖项。当我安装该软件包时,它可以工作!

在这两种情况下,生成的 nuspec 文件似乎没有区别。显然 Nuget 包管理器正在做一些我错过的事情。

有什么提示吗?

更多详细信息:当我在包管理器控制台中创建一个 lib 文件夹并手动放置我的 dll 时,lib->net45->MyProj.dll,然后当我安装这样创建的包时,也“不”安装依赖项。再次回到阅读文档。