gpt4 book ai didi

nuget - 如何将文件夹添加到 nuspec 文件

转载 作者:行者123 更新时间:2023-12-03 10:38:04 32 4
gpt4 key购买 nike

所以我实际上是在尝试将一个网站项目(不是 Web 应用程序,所以没有 csproj 文件)打包成一个 NuGet 包,准备好让 Octopus 消费,但我却遇到了一个又一个的砖墙..

我研究过使用 OctoPack,但它不支持网站项目,只支持 Web 应用程序项目。

我现在试图找到一种将文件夹(在我的情况下是网站)添加到 Nuget 包中的方法,但 Nuget 不允许通过命令行执行此操作,是吗?它还需要一个 .csproj 文件!

我也试过尝试创建 NuGet 规范文件并将其传递到文件夹中,但不可能?

目前我可能不得不使用 NuGet 包资源管理器,但我想编写脚本。

我看过这个问题,但似乎没有处理我的情况
Can I create a nuget package without a project file

那么有谁知道如何最好地通过命令行将文件夹添加到 NuGet 包中!?

最佳答案

我不知道 OctoPack,但使用 nuget.exe,打包分两步完成:

  • 手动创建 .nuspec,或从 .csproj 或现有程序集生成一个(参见 nuget spec 中的 the docs)。
  • 调用 nuget pack使用在上一步中创建的 .nuspec 作为参数。

  • 由于您周围没有 .csproj,因此您只能手动创建 .nuspec(或使用诸如 NuGet Package Explorer 之类的 GUI 工具)。

    您可以在 Nuspec Reference 中阅读有关如何创建 .nuspec 文件的所有信息。 ,特别是关于 Specifying Files to Include in the Package 的部分.

    如果你想在包中包含一个文件夹(递归?),你需要在 XML 中添加如下内容:
    <files>
    <file src="bin\Release\**\*.*" target="content" />
    </files>

    这将获取 bin\Release 的所有文件和(递归)子文件夹。文件夹并将它们放入 content NuGet 包的文件夹。

    我不知道 OctopusDeploy 期望在包中采用什么格式,但这就是在包中包含文件夹的方式。

    编辑 :在 OctoPack README 中似乎有一些关于此的文档.

    关于nuget - 如何将文件夹添加到 nuspec 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24551235/

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