首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在制作跨平台的 NuGet 工具包时,如何将工具(exedll)的所有依赖一并放入包中

在制作跨平台的 NuGet 工具包时,如何将工具(exe/dll)的所有依赖一并放入包中 2018-07-03 13:30 NuGet 提供了工具类型的包支持...但是,默认情况下,NuGet 不会将这些工具的依赖一起打包进入 NuGet 包 nupkg 文件内,这就使得功能比较复杂的跨平台 NuGet 工具包几乎是无法正常工作的。...本文将介绍将这些依赖加入 NuGet 包中的方法,使得复杂的工具能够正常使用。...---- 问题 你可能是在 创建一个基于命令行工具的跨平台 NuGet 工具包 的时候遇到依赖问题的,也可能是自己做到另外什么工具遇到的。...然后,我们就可以把输出目录中除了 NuGet 自然而然会帮我们打入 NuGet 包中的所有文件都加入到 NuGet 包中的对应目录下。 具体来说,是将下面的 Target 添加到项目文件的末尾。

2.8K30

NuGet包管理平台

NuGet就是一个专门管理这些包的平台,所有开发者可以将自己的优秀代码打包上传到这个平台,供全球开发者使用。...同时在右侧这一栏中,可以看到项目网站,源代码链接,开源许可等等。通过网站中这些信息,我们可以更好地去判断自己的项目是否可以放心的使用这个包。...我们还是以QRCoder包为例子,如果从解决方案右键进入此界面,点击这一条后,右侧会显示该解决方案下所有的项目,您需要选择至少一个项目,指定哪个项目要使用这个包,同时在项目选择框下方,您可以选择要引用的版本...对于已安装的包,您可以在“已安装”这个页面查看或者在双击项目名称在配置文件中查看: 如果被引用的包出现了新版本,您可以在“更新”页面查看,是否更新,可以您自行判断。...(Default project): 对于包的来源,您也可以点击后边的小齿轮按钮,自定义来源,对于某些在公司内部共享的包,您可以通过此界面来配置为公司内部NuGet网站: 您可以使用以下三种命令来完成包的安装

1.3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Roslyn 开发 NuGet 包的 Task 编译可能遇到的问题

    在需要复杂的编译的时候,可以通过自己定义一个任务用来定义编译 如何入门开发请看 如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包 - walterlv 本文只会补充一些开发的过程会遇到的坑...4.7.2 和 .NET Standard 2.0 以上 判断当前编译器平台 在跨平台的开发可能用户使用的是 dotnet core 版本,于是需要一个 dotnet core 版本的 Task 让他进行编译...使用下面代码可以判断当前点编译器是运行在哪个平台 '$(MSBuildRuntimeType)' == 'Core' 如果上面代码返回 true 那么编译器是 dotnet core 平台 以上面代码判断可以写出对使用...dotnet core 和 .NET Framework 两个平台的不同的程序集文件 调用方法 假定在程序集 UsingMSBuildCopyOutputFileToFastDebug.dll 里面包含...包的 AssemblyFile 属性下,这个属性的定义请看代码 <!

    53010

    dotnet 配置 github 自动打包上传 nuget 文件

    在上一篇博客告诉小伙伴如何使用 github 做持续集成,本文告诉大家如何配置 github 让在 master 每次合并都会自动创建一个 nuget 文件,自动上传 在 github 的 action...build: 通过 runs-on 属性可以指定在哪个环境运行,如在 windows 的最新版本运行 jobs: build: runs-on: windows-latest 切换分支 接下来就是打包步骤...shell: pwsh 默认在 windows 执行的是 PowerShellCore 脚本,可以通过 shell 属性指定使用哪个平台,可选的是 bash 在非 windows 平台降级为...脚本 在执行上面代码的要求是在仓库的文件夹存在 .sln 文件,如果仓库文件夹不存在,那么需要加入 sln 所在的路径 安装 nuget 应用 在 windows 平台都没有安装 nuget 需要从官方下载...使用 nuget 用下面命令上传 nuget 文件 .

    1.2K20

    AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决

    本文将指导您如何在本地网络环境中成功安装并配置AvaloniaUI所需的工具和模板。 2....2.1 Visual Studio 2022安装 由于我个人习惯使用Visual Studio开发,因此首先介绍如何在Visual Studio 2022中安装AvaloniaUI扩展。...VS 2022中Avalonia UI模板: Rider中使用模板: 4....:5000访问: OK,这就算部署完成了,复制图中的标红的URL地址:http://localhost:5000/v3/index.json, 在VS中配置NuGet搜索地址吧: 5....总结 本文介绍了如何在本地网络环境中成功安装并配置AvaloniaUI所需的开发工具和模板,以及如何部署私有NuGet服务以便团队内部成员之间共享和管理NuGet包。

    81410

    AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决

    本文将为您提供一套完整的离线开发解决方案,包括IDE的安装、Avalonia UI模板的配置、私有化NuGet服务的部署以及NuGet包的制作和上传等。2....Rider安装JetBrains Rider IDE在2020.3版本中开始内置支持Avalonia XAML,包括对Avalonia特定XAML功能和自定义代码检查的一流支持。...VS 2022中Avalonia UI模板:Rider中使用模板:4....IDE配置NuGet源复制前面NuGet上传页面图中红色字体的URL地址:http://localhost:5000/v3/index.json, 在VS中配置NuGet搜索地址:剩下的就和平时安装包一致了...总结本文介绍了如何在本地网络环境中成功安装并配置AvaloniaUI所需的开发工具和模板,以及如何部署私有NuGet服务并制作及上传NuGet包以便团队内部成员之间共享和管理NuGet包。

    21310

    FreeSql 配套工具,基于 Razor 模板实现最高兼容的生成器

    MySql.Data、MySqlConnector 的实现; 4、自定义导航属性关系的配置; 5、配套工具 FreeSql.Tools 发布; 本文主要讲解第5项《FreeSql.Tools》,大主角往往在最后才出现...使用反射决定使用哪个 mysql 驱动。...= null) { //... } return ret; } 自定义导航属性关系的配置 FreeSql 原先支持约定式导航关系配置,对于新项目开发无疑可约定,但是很多老项目命名不规范的就使用不了相关的功能...有关约定配置可参考 github wiki 中心文档 QQ 开发群真是个好平台,在发起讨论后,各位大佬都纷纷提出建议,最后以一票否决了各大建议,哈哈。。...FreeSql 在早期做过一套生成器模板,功能比较隐秘,一般人不知道如何使用。。之后就一直沉迷于 CodeFirst 的功能开发,无法自拔。

    1.1K30

    .NET Core系列 : 2 、project.json 这葫芦里卖的什么药

    此文件旨在: 替换 NuGet 文件管理器 package.config 文件,它可标识项目的 NuGet 引用。 指定项目支持的框架,以及有关如何为特定框架构建项目的配置详细信息。...对于.NET Core来说,所有使用到的程序集都被打包成一个NuGet包,所以针对程序集的直接依赖转变成针对某个NuGet包的依赖。...,在nuget管理中也可以看到这是默认的离线包目录,我们需要什么样的包只要把它复制到这个目录,在nuget管理中的程序包源选择离线的源即可。...现在,想像你如果为此框架引用 NuGet 包,但有时怀疑可能存在需要修复的缺陷或可能存在一个批准的增强功能。通常,这需要独立于项目/解决方案处理组件中的源代码。...否则,会加载包文件夹中编译的二进制程序。

    2K80

    发布基于Orchard Core的友浩达科技官网

    本篇文章为你介绍如何基于Orchard Core开发一个公司网站。Orchard Core是一个免费和开源的社区交流项目,致力于在ASP.NET Core平台开发应用程序和可重用性组件。...你可以在网页上检索 NuGet 软件包,并在自己的机器上使用终端(或者 Visual Studio 里的图形界面)安装它们 NuGet包命令 目前预览版需加 -Pre Install-Package OrchardCore.Application.Cms.Targets...安装好后配置一下,最终如下: ? 后台为/Admin ,可以进入查看相关设置 ? 为Orchard Core创建自定义模块 我们将创建一个自定义模块来扩展Orchard Core。...自定义模块添加Admin菜单以及配置permission 1.在自定义模块项目中安装Nuget包 OrchardCore.Environment.Navigation ?...需要安装nuget包OrchardCore.Data.Abstractions。 6.添加Create方法 注意名称必须是Create,返回类型为Int 在Create方法中创建表 ?

    3.4K40

    如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包

    如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包 发布于 2018-05-11 16:04...我分为两篇可以减少完成单个任务的理解难度: 如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包 如何创建一个基于命令行工具的跨平台的 NuGet 工具包 第零步:前置条件 第一步...所以,我们需要进行“一番配置”,使得这个项目编译成一个NuGet 工具,而不是一个依赖包。...(如果你想了解更多 csproj 中的 NuGet 属性,可以阅读我的另一篇文章:项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) - 吕毅)...总结 不得不说,制作一个跨平台的基于 MSBuild Task 的 NuGet 工具包还是比较麻烦的,我们总结一下: 准备项目的基本配置(设置各种必要的项目属性,安装必要的 NuGet 依赖) 建立好

    1.4K10

    【ASP.NET Core 基础知识】--环境设置

    3.2 配置 NuGet 源 配置NuGet源是在.NET Core开发中的一项常见任务,它允许你指定从哪里获取和管理NuGet软件包。...以下是如何配置NuGet源的基本步骤: 查看当前配置: 使用以下命令查看当前系统上配置的NuGet源: dotnet nuget list source 这将列出当前的NuGet源列表。...Tip: 确保添加的NuGet源是有效的,并且你有访问它的权限。 优先级的概念是在同时存在多个源时,确定从哪个源获取包。在大多数情况下,你可能不需要手动调整优先级。...通过配置NuGet源,你可以更灵活地管理和获取你项目所需的软件包,特别是当你需要使用私有或本地的NuGet源时。...解决方法: 更新项目文件中的 NuGet 包引用,将其升级到与新 SDK 兼容的版本。可以使用 dotnet restore 命令来解决包的依赖关系。

    35410

    .NET Core多平台开发体验: Windows

    如果这些预定义的脚手架模板不能满足我们的需求,我们还可以根据自身的需要创建自定义的Project或者Item模板,至于自定义模板的该如何定义,我们就不在这里赘言介绍了,有兴趣的读者朋友可以参考.NET...我们创建的自定义模板最终体现为一个NuGet包,我们可以通过执行dotnet new -i或者dotnet new --install命令对其进行安装。...如果我们需要按照一个新的NuGet包,我们需要选择第一个标签页,并在左上角的文本框中输入需要安装的NuGet包的全名或者全名的部分文字,与之相关的NuGet包将会筛选出来,如果目标NuGet包正好在该列表中...有的情况下我们往往只知道某个需要使用的类型名称而忘记了所在NuGet包的名字,如果你使用了Visual Studio 2017,可以借助它提供的智能提示功能来安装对应的NuGet包。...在介绍了如何安装NuGet包之后,我们回到本行最初的话题:如何将通过脚手架命令创建的控制台应用转化成一个ASP.NET Core应用。

    1.7K70

    ABP入门系列(15)——创建微信公众号模块

    引言 现在的互联网已不在仅仅局限于网页应用,IOS、Android、平板、智能家居等平台正如火如荼的迅速发展,移动应用的需求也空前旺盛。...而恰好ABP框架就已经帮我们解决了这一问题,Abp是基于【模块化设计思想】构建的,开发人员可以将自定义的功能以模块(module)的形式集成到ABP中。 不同的模块通过组装就可以组成一个新的功能。...因为要使用到Abp定义的模块功能,首先要安装Abp Nuget包,选择后会提示需要以下Nuget包,点击确定安装即可。 ? 2.2....指定依赖模块 因为我们需要通过webapi与现有demo进行交互,所以还需要安装Abp.Web.Api Nuget包。 ? 那怎样指定依赖呢,只需要通过[DependsOn]特性指定即可。...而作为Abp生成的模板项目,启动项目自然是web应用,所以AbpBootstrapper肯定在Web项目中被初始化。

    1.6K80

    NuGet 修改包路径

    NuGet 是 .NET 平台下的一个免费、开源的包管理开发工具。...我们可以通过修改配置将其指定到自定义的目录下。...NuGet.Config,将该文件夹中的 Microsoft.VisualStudio.Offline.config 文件的内容复制到新建的 NuGet.Config 中,再在其中添加上述的节点。...(你在全局包管理目录下找一个包,在其中新建一个文本文件,然后在项目中通过 NuGet 安装该包,你会发现你新建的这个文本文件也被复制到了项目的 packages 目录下的对应包中。)...NuGet 时,NuGet 会检测这个配置文件并读取里面的配置信息,如果子目录内也有 NuGet.config 文件,那么 NuGet 会自动将子目录内的配置与上级目录的配置合并,存在相同的配置时,以子目录内的配置优先

    2.2K10

    开始第一个插件【适用于v1.2-1.3】

    本示例将会使用”鹦鹉学舌”这个小插件的实现来演示如何使用Newbe.Mahua实现第一个机器人插件。 插件功能 自动将发送者的消息回发给发送人,鹦鹉(英文:Parrot)学舌。...安装nuget包 Nuget是什么?点击学习 本SDK是多目标平台的SDK。...可以根据你的需求安装对应的nuget包,我们将这些nuget包称为平台支持包详细罗列如下: 平台 nuget包 酷Q(https://cqp.im) Newbe.Mahua.CQP Amanda(http...除了安装平台支持包之外,还可以安装Newbe.Mahua.Tools.Psake这个nuget,我们称为开发工具包。 开发工具包提供了在开发过程中一些必要的自动化过程,例如版本打包等。...protected override void Load(ContainerBuilder builder) { //将相关的实现类注册到,此处可以根据自定义的配置文件进行按需加载

    38800

    在制作多框架项目的 NuGet 包时应该注意的问题(buildMultiTargetingTargetFrameworks)

    但如果需要自定义一些编译步骤,那么就需要在制作 NuGet 包时做很多的特殊处理了。 本文介绍制作适用于多框架项目的 NuGet 工具包时应该注意的问题。...build/ + buildMultiTargeting/ + buildTransitive + tools/ 由于涉及到自定义 NuGet 包的代码都写在 build buildMultiTargeting....NET Core / .NET Framework / WPF 项目) - walterlv 制作有自定义功能的 NuGet 包 我之前写过一些关于如何制作各种高级功能的 NuGet 包的博客: 如何创建一个基于命令行工具的跨平台的...NuGet 工具包 - walterlv 如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包 - walterlv 从零开始制作 NuGet 源代码包(全面支持 .NET Core...包自定义的功能不执行的问题。

    38230

    如何在 MSBuild 中正确使用 % 来引用每一个项(Item)中的元数据

    MSBuild 中写在 中的每一项是一个 Item,Item 除了可以使用 Include/Update/Remove 来增删之外,还可以定义其他的元数据(Metadata)...使用 % 可以引用 Item 的元数据,本文将介绍如何正确使用 % 来引用每一个项中的元数据。...---- 定义 Item 的元数据 就像下面这样,当引用一个 NuGet 包时,可以额外使用 Version 来指定应该使用哪个特定版本的 NuGet 包。...写文件,将以上拼接出来的每一项写入到文件中的每一行; 执行工具程序,这个程序将使用这个文件来执行自定义的编译。...关于使用 exe 进行自定义编译的部分可以参考我的另一篇博客: 如何创建一个基于命令行工具的跨平台的 NuGet 工具包 - walterlv 关于写文件的部分可以参考我的另一篇博客: 在 MSBuild

    30310
    领券