问题标签 [packagereference]

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 回答
91 浏览

.net - ASP.NET MVC 5 项目中的 PackageReferenec

我正在尝试从 packages.config 迁移 ASP.NET MVC 5 网站项目以使用包参考。我们的项目使用 .NET Framework 4.6.1。我查看了网上的各种文章,但其中大部分都集中在 .NET Core 项目上。

我能够使用迁移工具进行此切换,但现在我遇到了问题(正如预期的那样,由于不支持这些项目类型)与带有“Content”目录的 JQuery 等 nuget 包以及带有“ContentFiles”的 Bootstrap "目录。

  • 如何将 JQuery“内容”文件获取到输出目录?
  • 如何将 Bootstrap 的“ContentFiles”复制到输出目录?

如果有人能指出我正确的资源,那就太好了。

0 投票
1 回答
41 浏览

nuget - PackageReferences 所需的 Nuspec 依赖项

想象以下情况:

项目 A 有一些 NuGet 依赖项(即项目 Z、项目 Y 和项目 X)。它使用 PackageReferences。

现在我想使用 .nuspec 文件将项目 A 打包为 .nupkg。在 .nuspec 文件中,您可以声明其他 NuGet 依赖项,它们将在安装时自动解析。

但这有必要吗?我认为 PackageReferences 已经解决了它们。

0 投票
0 回答
68 浏览

c# - 迁移到 PackageReference 后构建失败

我已经开始从 packages.config 迁移到 PackageReference,但似乎我们私有存储库中的一些包没有得到解决。当我使用 packages.config 时项目构建良好,但是当我迁移它时找不到这些程序集。参考资料显示在项目参考资料中。这可能与库的打包方式有关吗?我们使用 .net 框架 4.6.1。

0 投票
3 回答
321 浏览

.net - Azure Devops 上带有 projectstyle PackageReference 的 Dotnet 包失败并显示“NuGet 错误 NU5019:找不到文件”

我正在尝试从 Azure DevOps 上的 C# 项目生成 NuGet 包。我在构建管道中设置了一个“dotnet pack”任务来生成包。该项目的目标是 netstandard20。项目风格是 PackageReference。它有一些依赖项,但只有在 nuget.org 上可用。

构建任务失败error NU5019: File not found

这是构建任务的输出:

构建日志

NU5019 表示 nuspec 文件“...包含不存在的文件”:https ://docs.microsoft.com/en-us/nuget/reference/errors-and-warnings/nu5019

由构建任务生成的提取的 .nuspec 文件包含以下 <files> 部分:

在我看来,构建步骤构建了 .dll,然后立即无法找到它进行打包。但是,会生成 .dll。

当我在我的机器上本地执行相同的命令行(在构建日志中看到)时,没有问题。

但是,我注意到我的机器上的 .Net 版本与构建服务器上的不同(请参阅构建日志): 我的机器

谁能帮我弄清楚构建步骤的问题是什么以及如何使它工作?

注意:我更喜欢使用“dotnet pack”而不是 NuGet.exe,因为 dotnet 能够在包中包含依赖项(NuGet 不支持 PackageReference 样式)。

0 投票
0 回答
11 浏览

visual-studio - 迁移到包参考后,包和程序集未在 Visual Studio 中单独显示

我按照此文档从 package.config 迁移到包参考

https://docs.microsoft.com/en-us/nuget/consume-packages/migrate-packages-config-to-package-reference

一切顺利。它删除了packages.config文件。将包从 dll 移动到项目文件中的包引用。

但是在视觉工作室中,它并没有像我的其他项目那样单独显示Assembliesand 。Packages它显示了引用中的包。

在此处输入图像描述

你可以看到第一个项目已经AssembliesPackages分开了。

而第二个项目(迁移的项目)将 NLog 包添加到引用中,而不是单独添加。

这两个项目都是.net framework 4.6.1项目。

这种行为可以改变吗?

0 投票
1 回答
132 浏览

nuget - 如何让 csproj 为 nuget 包添加 dll 的参考文件?

我可以添加一个 dll 并确保它位于 lib 和 ref 文件夹中,这样我就可以避免 .nuspec 文件中的 MSB3246、NU5128 和 NU5131 警告。

但我不知道如何在 .csproj 文件中执行此操作。我只到达了那里的一部分。

如何确保 dll 还在 .csproj 的 nuget 包中创建 ref 文件夹?

0 投票
0 回答
21 浏览

c# - 使用 PackageReference 时如何将 NuGet 包 lib 文件夹中的 txt 文件自动加载到输出文件夹中

我们创建了一个 nuget pacakge,它在 lib 文件夹下包含一个 txt 文件以及其他 dll 文件。 在此处输入图像描述

当我们使用 PackageReference 方法向这个 nuget 添加依赖时,在构建期间所有的 dll 文件将被自动加载到输出文件夹中。但是,未加载该 txt 文件。有谁知道当我们添加对它的引用时,我们如何将这个 txt 文件加载到输出文件夹中?

非常感谢

0 投票
0 回答
22 浏览

.net-core - 有没有办法引用一个在发布管道下批准了特定阶段的 nuget 包?

在我们之前的一个具有 package.config 的项目中,我们曾经引用过一个 nuget 包,该包在发布管道下获得了特定阶段的批准:

我们现在正在使用包参考,我尝试过这样的事情,但看起来它总是最新的:

有没有办法参考@UAT 阶段批准的 nuget 包?

0 投票
0 回答
83 浏览

c# - 使用 jenkins 和 devenv.com 构建时缺少 PackageReference 的程序集引用

我正在构建一个包含类库、UnitTest 项目和 .vdproj 设置项目的解决方案。因为 MSBuild 无法处理 vdproj,所以我使用的是 devenv.com。我C:\NuGet\nuget.exe restore "%WORKSPACE%\solution.sln" -ConfigFile C:\NuGet\NuGet.config在构建开始之前调用并使用"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\devenv.com" rotring.tacton.export.sln /build "ci".

之后,我使用"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" "%WORKSPACE%\testproject.test\bin\ci\tests.dll".

nuget restore 命令告诉我每个包都已正确还原到正确的位置: Added package 'package.1.9.11' to folder 'C:\dev\workspace\solution\packages'.

但我仍然收到错误: error CS0234: The type or namespace name 'sometype' does not exist in the namespace 'somenamespace' (are you missing an assembly reference?)

即使我手动执行上面提到的控制台构建,本地构建也能正常工作。我是否需要使用 devenv.com 以某种方式恢复软件包?与packages.config相比,PackageReference的优势不是所有包都存储在同一个地方吗?

更新:我设法找到了一部分自己。一件事是我的测试项目没有迁移到 PackageReference 并导致错误。但是,我能够通过首先使用 MSBuild 恢复包来构建解决方案:

"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin\MSBuild.exe" /t:Restore /p:RestoreConfigFile="C:\NuGet\NuGet.config"

然后使用 devenv.com 构建解决方案:

"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\devenv.com" solution.sln /build "ci"

现在我面临的唯一问题是 msbuild 只从主项目恢复包,并不关心测试项目。

0 投票
0 回答
29 浏览

nuget - 将 nuget 包的内容文件复制到输出目录

所以最近我更改了我的项目的 .csproj 以移动到包引用,而不是使用 app.config。

以前,在 app.config 中有对 IronPython nuget 包的引用,在 csproj 中有以下引用。

它工作正常并将文件复制到输出目录。

现在转到包参考,我添加了以下行并从 app.config 中删除了 IronPython。

但是“..\packages\IronPython.StdLib.2.7.8.1”中的内容文件不再复制到输出目录。我该如何纠正这个问题?有任何想法吗。谢谢