使用 nuget 包添加自定义构建步骤

2024-03-16

我正在开发一个 nuget 包,它将设置当前项目以使用我公司的程序集版本控制标准。除了添加自定义构建步骤之外,我已经让它顺利地完成了我想要的所有事情(到目前为止)。

从历史上看,这是通过直接编辑 .csproj 文件并在 xml 中添加几个新标签来手动完成的。这些都是 ...

  • 地产集团
  • Target

它实际上成功添加了它们,但我是通过编辑 xml 而不是通过中的 EnvDTE 对象来完成的$project参数输入安装.ps1。但我收到一条消息弹出,询问我是否要放弃我的更改。

我已经添加$project.Save()在我进行更改之前对我的脚本进行更改并消除弹出窗口,我只是得到一个告诉我项目已更改并询问我是否要重新加载它的信息。哪个更好,但仍然不太完美。

有一个更好的方法吗?


您还可以使用 David Fowler(NuGet 首席开发人员)编写的 NuGetPowerTools 包。

Install-Package NuGetPowerTools

将其作为依赖项添加到您的包中,然后在 install.ps1 脚本中,您可以调用:

Add-Import "\Path\To\Import.targets" $project.ProjectName
Set-MSBuildProperty "MyPropertyName" "MyPropertyValue" $project.ProjectName

$value = Get-MSBuildProperty "MyPropertyName" $project.ProjectName

查看代码:https://github.com/davidfowl/NuGetPowerTools https://github.com/davidfowl/NuGetPowerTools了解更多信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 nuget 包添加自定义构建步骤 的相关文章

  • VSTS 构建 Nuget 打包器不起作用

    我正在尝试在构建后打包一个库以在我的 VSTS Packages feed 上发布 但任务 Nuget Packager 不起作用 我尝试了很多设置组合 但无法使其发挥作用 我尝试使用 Net Core 和 Net 4 6 2 打包该库 尝
  • Dotnet build 和 dotnet pack 生成不同的 nupkg

    这与这个问题 https stackoverflow com questions 76467763 cant use analyzer in nuget package an instance of analyzer cannot be c
  • 使用curl NuGet无法解析的外部符号

    环境 微软视觉工作室 2017NuGet 包管理器C 项目 工作流程 我使用 NuGet 添加了curl 我尝试编译我的项目 它抛出 8 个链接器错误 无法解析的外部符号 项目结构 root gt packages gt curl 7 30
  • Visual Studio上的Nuget包推送403错误

    我创建了一个视觉工作室类库 我想将其作为一个包发送给 Nuget 我用了视觉工作室包管理器安慰 命令如下 nuget spac 你好nuget nuget 包 hellonuget nuspec nuget 推送 hellonuget 1
  • 如何在nuget和项目引用之间有效切换?

    我正在开发一个私有测试工具 它分为一个核心库和几个扩展插件 扩展项目通过私有 MyGet feed 依赖于核心库 因此我只需单击打包并上传到 MyGet feed 即可 无需太多麻烦 我遇到的问题是 除非我发布核心 NuGet 包的全新版本
  • Nuget Push 总是返回 404(未找到)

    我尝试将 nuget 包发布到我的 GitHub Packages 帐户 但在所有情况下我都会遇到 404 错误 我已按照 GitHub 网站上的要求进行操作 nuget source Add Name GitHub Source http
  • 如何从Nuget包中选择目标框架

    我正在使用 NuGet 包 其中包含 2 个目标框架的程序集 net45 和 netstandard1 5 我的项目针对的是net471 因此与netstandard1 5兼容 当我添加包时 它从 net45 文件夹复制 dll 如何强制
  • 使用“VisualStudio.DTE.10.0”创建解决方案并添加项目

    我正在尝试创建 VS2010 解决方案并从独立应用程序 而不是加载项 添加项目 我可以创建 VS2010 的实例 但我无法确定如何正确创建项目 我只能找到如何使用 EnvDTE80 对象创建项目的示例 这稍后会导致异常 因为该项目文件的格式
  • NuGet 自动包恢复在我的构建服务器上不起作用

    我在这里束手无策 我已经尝试了所有我能找到的方法来让 NuGet 在 TFS 构建服务器上恢复我的包 但似乎没有任何效果 我签入的最新更改是here https stackoverflow com questions 45680811 th
  • 如何降级我在cmd上拥有的nuget版本?

    我错误地使用 nuget update self 在cmd上升级nuget 自动升级到V3 5 并且我想将其降级到旧版本 2 8 6 与当前生产版本相同 如何降级 卸载 nuget 然后安装旧版本 我搜索了降级 nuget 卸载 nuget
  • NuGet 中的包依赖项解析和命名冲突

    在我的工作团队中 我们依赖两个 NuGet 源 来自 NuGet org 的官方源用于公共包 文件服务器上的文件夹用于内部包 这对我们来说效果很好 但我认为我们有一个潜在的问题 看起来 NuGet 根据包名称和版本号来解析依赖项 由于只有一
  • 控制 .nuspec 中的代码合同引用

    我正在使用代码合同为我的项目生成附属程序集 基本上 它为项目的 MyAssembly dll 创建一个 MyAssembly Contracts dll 它应该放在您的程序集旁边 但不会被任何应用程序引用 它仅由合同工具使用 我试图将其包含
  • 可以删除 .nupkg 文件吗?

    我是 NuGet 的新手 刚刚开始使用它并给自己买了一份 WatiN 的副本 我正在尝试缩小在将其放入版本控制之前撤回的文件夹的大小 我注意到 WatiN 2 0 50 nupkg 约为 12mb 我注意到从这个链接 http nuget
  • Nuget:指定依赖项而不添加引用

    我有一个包 例如 MyStuff Data 需要 EntityFramework 和其他 才能工作 但仅限于内部 我不希望每个使用 MyStuff Data 的项目也引用 EntityFramework 以及所有其他项目 但 dll 始终需
  • 如何从外部类库(通过 NuGet 包)引用 UserControl?

    是否可以在驻留在 UWP 类库中的 UWP 应用项目中引用和使用 UserControl 我尝试在类库中创建 UserControl 但是当我尝试在应用程序中使用它时 我得到 App1 exe 中发生 Windows UI Xaml Mar
  • 从 git 签出后 nuget dll 丢失

    I have a C solution containing different projects On those projects I have some normal nuget packages like Newtonsoft Js
  • Visual Studios 2015 中的“恢复 NuGet 包”没有执行任何操作

    我将解决方案从 SVN 拉入 Visual Studios 2015 代码中的一些 使用 引用出现错误 因此我尝试在右键单击 解决方案 中的解决方案时运行 恢复 NuGet 包 选项探索者 这没有任何作用 我必须手动进入 nuget 管理器
  • 如何在 Azure Pipeline 中使用 dotnet list --deprecated 来中断构建

    我想检查我的解决方案是否使用了已弃用的 NuGet Packages 所以我添加了 task dotNetCoreCLI 2 name checkDeprecatedNuGet inputs command custom projects
  • 仅在调试版本中防止 NuGet 恢复包

    我在解决方案中启用了 恢复包 选项 因此当我将代码上传到 CI 服务器时 它会更新正确构建所需的所有包 并且效果很好 现在的问题是 在我的本地计算机上 构建需要很长时间才能启动 因为正在 更新软件包 有没有办法仅在发布版本中启用恢复包 我尝
  • 使用浮动版本分发 NuGet 包的正确方法

    我正在创建一个依赖于 Xamarin Forms 的 NuGet 包 该包应该可以与任何最新版本的 Forms 一起正常工作 因此我将其设置为

随机推荐