gpt4 book ai didi

nuget - 从多个项目创建 NuGet 包,包括 NuGet 依赖项

转载 作者:行者123 更新时间:2023-12-04 18:40:10 27 4
gpt4 key购买 nike

我有一个解决方案,我想从两个项目中创建一个 NuGet 包。

如果它只是一个项目,我会使用 .csproj 文件来规范 NuGet 打包器,但由于我希望两个不同的项目进入完成的包,我不能这样做。

我创建了一个引用来自两个项目的 DLL 的 NuSpec 文件,然后在命令行中使用 -IncludeReferencedProjects 开关将其打包。这包括来自同一解决方案的引用项目,但不包括作为项目依赖项的任何 NuGet 包。

我尝试在另一个解决方案中引用新的 NuGet 包,该解决方案构建并运行,但在运行时遇到 FileNotFoundException,当它从作为我刚刚创建的 NuGet 包中的依赖项的 NuGet 包中查找 DLL 时遇到了 FileNotFoundException。

我意识到我可以在 NuSpec 文件中包含 NuGet 依赖项,但是当我的一个项目添加另一个 NuGet 引用时,这将变得过时。

是否可以设置 NuSpec 文件,以便它使用我的两个项目中的 .csproj 文件并正确设置 NuGet 依赖项,即使项目已使用新的 NuGet 依赖项更新?

最佳答案

好吧,据我所知,你有两个项目,foo.csproj 和 bar.csproj。 foo 引用栏。

您应该使用 nuget pack foo.csproj -IncludeReferencedProjects (请注意,pack 命令应用于 foo )为 IncludeReferencedProjects选项还添加了引用项目的依赖项。
这导致 foo.dll 和 bar.dll 都出现在 foo 包的 lib 文件夹中。此外,foo 和 bar 依赖项都将出现在 dependencies 下。元素。

关于nuget - 从多个项目创建 NuGet 包,包括 NuGet 依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28107961/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com