问题标签 [nuget-spec]

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 投票
0 回答
167 浏览

nuget - Nuget 3.3/VS 2015 包导致项目引用 dll 但不包含内容文件

我一直在使用最新版本的 Nuget (3.3) 开发 Nuget 包,我正在尝试使用新的“contentFiles”功能包含内容。但是,Nuget 完全拒绝在安装之后/期间将内容文件复制到目标项目中。它正确地包含了我在项目中引用的两个 DLL 文件。这是我的 .nuspec 文件的副本:

安装后的最终文件夹结构如下所示:

这对我来说似乎是正确的,但是 contentFiles/any/net45 中的文件实际上并没有被添加到 .csproj 文件中。添加的唯一文件是 packages.config 文件。

0 投票
0 回答
60 浏览

.net - 支持 ASP.NET Core 5、UWP 10.0、.NET 4.6 的 PCL 的 Nuget lib 文件夹名称

我写了一个支持以下平台的类库。

  • ASP.NET 核心 5
  • UWP 10.0
  • .NET 4.6

目标

我想创建一个 NuGet 包。我找到了一个列出所有支持配置文件的网页,但没有我需要的配置文件。

我的问题是,我应该为我的 nuget 包的 lib 文件夹命名,以便能够在通用 Windows 应用程序、.NET Framework 4.6 项目和 ASP.NET 5 项目中使用它?

nuget 目标

0 投票
0 回答
657 浏览

.net - 如何从 nuget 包中排除引用的内容文件夹

我的文件中有来自另一个项目的三个引用的内容文件夹.csproj

我想nuget从我的项目中创建一个不包含内容文件的包。我试过这个命令:

但它包括上述文件。我也尝试过这些论点-Exclude但没有成功:

当我使用**/infrastructure/**它时,它可以工作,但也排除了一些我需要打包的文件。

如何排除引用的内容文件?

PS:在我的.nuspc文件中,我只有一个file元素:<file src="cassette-cache\**" target="Content" />.

0 投票
1 回答
3142 浏览

c# - 未指定“targetFramework”属性时,Nuget 不安装依赖项

根据nuspec 参考章节“Specifying Dependencies in version 2.0 and above”,可以在没有附加属性的元素dependency中声明 a ,这意味着此依赖项对所有框架都有效。因此,我在 .nuspec 中为我的一个包指定了以下内容:grouptargetFramework

在我的一个项目中安装软件包后,依赖项根本不存在。既不在项目引用中,也不在packages我的项目根目录中的文件夹中。但是,当这样做时:

...它完美地工作。

这是一个错误吗?~~我是否可以用空的本地声明覆盖“全局”依赖配置?~~或者我在这里误解了什么?


编辑

可以声明空的依赖元素并且仍然具有“全局元素”:https ://github.com/dsplaisted/PCLStorage/blob/master/common/PCLStorage.nuspec

0 投票
1 回答
315 浏览

powershell-3.0 - 安装nuget包时如何从powershell脚本install.ps1调用函数

我试图在安装我自己的 nuget 包时自动调用 powershell 脚本。

我的 install.ps1 如下

我想在 tools\Functions.ps1 中的 functions.ps1 中调用一个函数

函数.ps1

安装.ps1

我收到错误消息说 install.ps1 找不到函数 Write-HelloWorld。

如何在install.ps1里面调用functions.ps1中的函数Write-HelloWorld?

谢谢

0 投票
1 回答
1494 浏览

nuget - Nuget:解决方案中项目之间的依赖关系

我不知道如何创建一个引用解决方案项目和第三方程序集的包

我有一个包含 2 个项目的解决方案,A并且B. B参考资料A。此外,B引用C是位于Solution/libs

A并且B应该是nuget包。

我有一个B.nuspec文件如下:

我运行了以下命令: nuget pack B.csproj -IncludeReferencedProject 正如 nuget 文档中所说,nuget 将结合来自 csproj 和 nuspec 的信息。然而...

它给了我一个 nupkgA.dllB.dllin\lib\net45C.dllin \lib。还有一个nuspec文件

当我将包安装到项目中时,没有A引用B, C

我的设置有什么问题?有没有办法使用从 csproj 获取的依赖项和手动指定的引用创建一个包(或者可能有一些隐藏的约定?)

0 投票
1 回答
42 浏览

c# - 为框架项目创建 nuget 包

我们的框架有 70 多个项目,我们希望为所有项目创建 nuget 包。为了做到这一点,我们确定了这 70 个项目的依赖层次结构,并发现项目之间有 4 个级别的向下引用。

在创建包低级项目时,我们没有任何问题,因为它们不依赖于任何其他项目。

  1. 但是当我们进入第二级时,我们遇到了问题,因为 2 级项目将引用 1 级项目的包,我们对 2 级包应该包含 1 级的二进制文件感到困惑,或者它们只需要在 nuspec 中将它们作为依赖项文件,因此当安装 level2 包时,level1 依赖项也安装在消费者应用程序中。

任何帮助将非常感激。

0 投票
1 回答
44 浏览

visual-studio - 我可以创建引用不同源的 NuGet 包吗?

我有一个项目需要作为 NuGet 包发布。

此项目引用其他 NuGet 包,这些包可在 MyGet 源中获得。

有什么方法可以在我的 NuGet 包中包含对 MyGet 提要的引用,以便这些引用正确解析,而无需手动将 MyGet 添加到 Visual Studio 中的包源中?

0 投票
1 回答
190 浏览

nuget - 对于面向 net45、asp.net core 5.0 和 windows 8 的便携式库,我应该使用哪个 lib 文件夹?

我目前正在用 C# 开发一个可移植的库,我想在 NuGet 官方提要上发布它。我之前已将程序集作为 NuGet 包发布,但它们是针对单个框架 (.NET 4.0) 编写的。

现在我很困惑如何在我的 NuGet 包中组织我的 lib 文件夹 - 我的可移植库可用于 .NET 4.5、ASP.NET Core 5.0、Windows 8、Windows Phone 8.1 和 Windows Phone Silverlight 8 项目。

在此处输入图像描述

我试图查找框架配置文件及其相应的 NuGet 缩写,但在官方文档中找不到它们。Stephen Cleary 不久前收集了配置文件,但他的列表不包含 ASP.NET Core 5.0 的配置文件。

我的实际问题是:我应该如何构建我的 NuGet 包的 lib 文件夹?针对上述框架版本的可移植库的配置文件名称是什么?如果我得到那个非常配置文件的名称,那么在非便携式库项目(例如 .NET 4.5 或 WinRT)中是否正确引用了该程序集?或者我应该为不同的框架版本创建子文件夹并在所有这些子文件夹中复制完全相同的程序集(这会大大增加包的大小)?我在 NuGet 包资源管理器中看到了一些包(如 xunit.assert)这样做。

xunit.assert 的结构

0 投票
0 回答
558 浏览

nuget - 通过 NuGet 的条件程序集引用

我有一个带有一组复杂程序集引用的 Visual Studio 解决方案(TFS Aggregator),我希望使用 NuGet 来解决它。参考取决于目标配置,而不是 .Net 平台。

问题定义

该解决方案有许多项目,其中大多数都引用一组通用程序集。有不同的程序集版本公开 API 更改。源代码包含分散的条件编译#ifs来管理版本的差异。因此项目和解决方案有许多配置;项目参考根据配置而变化。

当前状态

正如您在源代码中看到的那样,每个项目都会导入一个通用的 MSBuild 文件,使用 Choose来做一些魔术。引用程序集必须位于解决方案级别的公共文件夹中,每个版本位于不同的子文件夹中。

例如,源代码包含

该解决方案具有Debug-2013定义TFS2013编译符号和导入 MSBuild 片段的配置

指向正确的程序集版本。类似Debug-2015的配置定义了TFS2015编译符号和导入

当前状态的缺点

此解决方案的缺点是管理参考文件夹。在每台新的客户端机器上,我都需要复制正确的文件,构建服务器也是如此。我想使用 NuGet 来管理这个烂摊子。

NuGet 尝试 #1

.nuspec我在文件中试过这个

但它结束在每个项目上创建一个 Reference 文件夹并且不解决条件引用。