首页
学习
活动
专区
圈层
工具
发布

.NET 将多个程序集合并成单一程序集的 4+3 种方法

使用 .NET Core 3.0 这种自带的发布单一 exe 的方法会将你的程序的全部文件(包括所有依赖文件,包括非托管程序集,包括各种资源文件)全部打包到一个 exe 中。...使用 Fody 在你的项目中安装一个 NuGet 包 Costura.Fody。...例如,你可以考虑新建一个项目,然后安装下面的 NuGet 包: lindexi.src.MacAddress.Source 安装完成之后,你就可以在你的项目中使用到此 NuGet 包为你带来的获取 MAC...如果你要制作一个像上面那样的源代码包,只需要在你要制作 NuGet 包的项目安装上 dotnetCampus.SourceYard,在你打包成 NuGet 包的时候,就会生成一个普通的 NuGet 包以及一个...NuGet 源码包,安装此包就像直接把源码放进项目一样 进阶篇:从零开始制作 NuGet 源代码包(全面支持 .NET Core / .NET Framework / WPF 项目) SourceYard

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

    Paket 介绍

    问题来了,为什么要替换NuGet? Paket 是一个用于 .NET 和 Mono 平台的包管理器,灵感来自于 Bundler。可与 NuGet 一起工作,可精确控制项目中所引用的各种软件包。...一方面,Paket使得你能够精确控制你的项目的包依赖所发生的事情。如果不同的包引用了不同版本的同一个依赖包,比如说log4net,他们之间没有更多的冲突。...首先要在你解决方案的根目录下包含一个.paket文件夹,里面包含用于安装和恢复包的工具paket.exe。...PAKET的来源是(NuGet或GitHub上)的包/文件名,它可以从这些源下载。...为了让PAKET使用引用文件,只需--hard开关重新运行安装命令 \.paket\paket.exe install –hard 这将检查paket.references 文件并用这个文件来自动引用该项目相对应的库

    1.3K90

    制作通过 NuGet 分发的源代码包时,如果目标项目是 WPF 则会出现一些问题(探索篇,含解决方案)

    在安装此 NuGet 包后,目标项目将获得这些源代码。 你可以通过以下博客了解如何制作一个源代码包。...将 .NET Core 项目打一个最简单的 NuGet 源码包,安装此包就像直接把源码放进项目一样 - 吕毅 Roslyn 如何基于 Microsoft.NET.Sdk 制作源代码包 - 林德熙 SourceYard...我们是通过项目中设置了属性 BuildOutputTargetFolder 让生成的文件跑到这里来的,目的是避免安装此 NuGet 包之后,引用了我们生成的 dll 文件。...项目文件就是很简单的项目文件,只是我们安装了刚刚生成的 NuGet 包 Walterlv.SourceYard.Demo.nupkg。...包中自动 Import 的部分没有加入到依赖项中,所以实际上包中的 .props 和 .targets 文件都不会被 Import 进来,这可能造成部分 NuGet 包在 WPF 项目中不能正常工作。

    1K40

    WPF dotnet 使用本机映像 native 优化 dotnet framework 二进制文件

    这个库适用于 .NET Framework 大于等于 4.6.2 的应用。这个包的作用是在构建时添加一个步骤,这个步骤的作用是构建本机映像二进制文件。...库 使用 Release 构建 设置目标的框架平台是 4.6.2 或以上 在设置 .NET Framework 到 4.6.2 或以上之前,需要先安装 .NET Framework 4.6.2 开发者工具包...本文代码放在 github 欢迎小伙伴访问 详细请看官方文档 FAQ Q: 如果这个新构建出来的二进制文件在没有安装 .NET Framework 4.7.2 或以上的设备上运行会如何?...A: 这个优化的二进制文件的优化只有在安装 .NET Framework 4.7.2 或以上的设备才能运行优化版,而对于没有安装 .NET Framework 4.7.2 或以上的设备会执行 MSIL...A: 这个优化的二进制文件将包含托管代码和本机代码,会让最终输出的文件更大 Q: 我是否可以在项目中使用这个技术?

    1.5K20

    .NET Core部署中你不了解的框架依赖与独立部署

    例如,可以使用简单的 copy 命令将其打包为 Zip 文件,或者使用选择的安装包进行部署。..." /> 如果尚未安装,请下载包含第三方依赖项的 NuGet 包。...若要下载该包,请在添加依赖项后执行 dotnet restore命令。 因为依赖项在发布时已从本地 NuGet 缓存解析出来,因此它一定适用于你的系统。...当为具有此类第三方依赖项的应用程序创建 FDD 时,已发布的输出会针对每个本机依赖项支持(存在于 NuGet 包中)的运行时标识符 (RID) 包含一个文件夹。...本节后面部分将显示完整的示例 csproj 文件。 运行 dotnet restore命令,还原项目中指定的依赖项。 运行 dotnet restore(请参阅注释)命令,还原项目中指定的依赖项。

    2.6K20

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

    NET Core 项目结构中最重要的文件可能是 project.json。此文件旨在: 替换 NuGet 文件管理器 package.config 文件,它可标识项目的 NuGet 引用。...Frameworks 和 dependencies dependencies此部分列出了你的项目所依赖的各个 NuGet 包,包括所述依赖项的版本号。...对于.NET Core来说,所有使用到的程序集都被打包成一个NuGet包,所以针对程序集的直接依赖转变成针对某个NuGet包的依赖。...在安装VS2015 Update3时,.NET Core所需的官方依赖包都已经安装在了(默认安装)C:\Program Files (x86)\Microsoft SDKs\NuGetPackages目录下...本文简要介绍了.NET Core项目中最为重要的一个配置文件project.json的内容和相关的工具,类库等基础信息,下篇文章我们来聊聊如何构建多个Project的解决方案的内容。

    3K80

    nuget服务器搭建,以及如何发布一个Nuget包

    一、本地dll如何打包,以及版本的更新 本小节主要介绍两种方式将本地dll打包为Nuget包, 1.1 利用nuget.exe进行打包(应用于.net framework) 1....下载nuget.exe nuget.exe下载地址:https://www.nuget.org/downloads。 下载完成后,不需要安装。请将nuget.exe复制到需要打包的项目文件夹中 2....打包成.nupkg包 首先运行.\nuget sepc 生成.nuspec配置文件,用于nuget的配置项 然后运行.\nuget pack packageName 发布成nuget包 3....本地文件包的方式 配置本地Nuget源。在工具 nuget包管理器 -> 程序包源,做如下配置 然后把发布的.nupkg包放在此文件夹即可 2....步骤如下(此nuget包不支持.net core版本): 3.1  搭建项目 创建一个mvc 项目(空) 此项目必须的.net Framework版本必须>=4.6。

    5.5K90

    用 WiX 制作安装包:制作 WPF 安装包界面(入门篇)

    前面我们制作完成了一个可自动安装 .NET Framework 依赖的 exe 安装包,下面我们将学习制作自己的安装界面。本文使用 WPF 制作安装包界面。 本文准备做什么?...我们将做这些事情: 创建一个 WPF 项目,用来做安装包的 UI 处理一下这个 WPF 项目,使其对接 WiX 的捆绑包 修改用来生成 exe 格式安装包的捆绑包项目,使其接入 WPF UI 项目 创建...然而使用 WiX 的 NuGet 包有额外的好处,可以使得团队成员无需每人单独安装 Wix 工具集即可完整编译安装包。不过这涉及到一些 NuGet 相关的高级操作,我在其他博客里有说到。...所以这个文件即可放到 WPF UI 项目中,也可放到 exe 的打包项目中。...我们把 WPF UI 项目中生成的文件加入到了负载中。(在本教程中,是“Walterlv.InstallerUI.exe”。

    2.7K20

    手动搭建自己的nuget服务器及使用

    这篇文章的主要目的: 1.搭建自己的私有的nuget服务器 2.打包代码为nuget包 3.在其他项目中使用私有服务器上的nuget包 一. 搭建自己的nuget服务器 1....创建一个空的ASP.NET Web 应用程序 ? ? 2.使用nuget管理器,添加nuget.server包 ? 安装成功以后,目录结构如下图 ? 3....进入项目所在文件夹,并把nuget.exe复制到该文件夹下 注意:nuget.exe下载路径,在这 ? ? 如上图,并在该目录进入cmd命令 5. 在该目录下,操作cmd命令 ?...6.现在nuget包就已经打好了 但是,如果我们想在我们的私有nuget服务器上有这个包,我们还需要把.nuget文件传到我们私有nuget服务器上; 如果有需要,可以自己在nuget私有服务器项目中添加一个上传功能...在其他项目中,使用我们私有nuget服务器上的nuget包 1. 右键解决方案,添加一个新的项目 ? 选择ASP.NET Web应用程序 ,项目名称 NugetTest ? 选择mvc ?

    4.8K20

    Roslyn 打包自定义的文件到 NuGet 包

    本文告诉大家如何在打包的时候加上需要放在包里面的文件 在 VisualStudio 使用新项目格式快速打出 Nuget 包 告诉大家快速打包的方法,但有时候我需要将本地的一些资源或依赖也放在包里面,此时就需要用到下面的方法...包id.targets 才会被执行,对应的 props 文件也相同 如果是自己手写文件名,在更改 NuGet 包 id 的时候如果没有更改,或复制不对,那么会发现没有执行 简单的解决方法是在打包的时候自动修改对应的文件包...\tools\nuget.exe" DestinationFiles="$(OutputPath)\tools\nuget.exe" SkipUnchangedFiles="True">... 使用 $(MSBuildThisFileDirectory) 拿到当前文件的文件夹,此时通过上一层文件就可以拿到 NuGet 包的文件夹。...GeneratePackageOnBuild> true false 通过 IsTool 将不会在安装的项目引用编译的文件

    1.2K20

    Roslyn 打包 NuGet 包 BuildTransitive 文件夹用于穿透依赖传递拷贝文件

    但默认的 NuGet 包的构建指导文件 targets 命令是不会在传递执行的,也就是如上的 C 项目将不会执行 B 项目安装的 A 库里面的 target 内容 有一些项目需要拷贝自定义文件,例如拷贝图片或者一些...文件里面的命令将会在传递中执行,也就是说只需要在底层的项目安装即可,不需要在可执行项目上也安装库 我写了很多 Rolsyn 的关于打包 NuGet 包相关的博客,如 Roslyn 打包自定义的文件到...在这个博客告诉大家如何打包自定义的文件到 NuGet 包,和将自定义的文件放在输出文件夹里面 但是以上方法存在的问题如上文,只有制定了 PackageReference 安装此库的项目,才能将自定义的文件输出...,修改放在 NuGet 包的 BuildTransitive 文件夹。...期望是在软件的输出文件夹里面可以找到这张图片,换句话说就是这张图片需要放入到 NuGet 包中,接着输出到安装了此库的项目的输出文件夹 此图片文件放在 Assets 文件夹下,默认的启动图片是 SplashScreen.scale

    1K10

    通过Mono 在 Heroku 上运行 .NET 应用

    开始 为了使用这个 .NET 编译包,先创建一个 ASP.NET MVC 4  网站,然后启用 NuGet 包仓库。...修复 NuGet 中仓库命令的奇怪参数问题 (我已经向 NuGet发了补丁) 至此,我们修正了 Mono, NuGet 和编译包后,应该解决了那些障碍。...总结 能够正常运行的: 在 Mono 3.0.11 和 XSP 3.0.11 中运行 ASP.NET MVC 4. NuGet 包仓库 所以你不用手动添加你的依赖库。...编译输出缓存及增量编译,包括已下载的 NuGet 包的缓存。 运行 EXE文件以作为后台工作线程。 需要添加额外处理的: 向 Web.config 中的 appSettings 添加配置项。...欢迎大家参与到这个项目中来。我计划在将来再写一篇 blog 来解析编译包如何生成依赖库 (这里的话只有 Mono and XSP)。 PS. 我正在努力使 Visual Basic 运行起来。

    4.5K60

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

    :创建一个项目,用来写工具的核心逻辑 为了方便制作跨平台的 NuGet 工具,新建项目时我们优先选用 .NET Core Library 项目或 .NET Standard Library 项目。...要特别注意:由于我们是一个 NuGet 工具,不需要被其他项目直接依赖,所以此项目的依赖包不应该传递到下一个项目中。...第三步:编写 Target .targets 文件是对项目功能进行扩展的关键文件,由于安装 NuGet 包会自动导入包中的此文件,所以它几乎相当于我们功能的入口。 现在,我们需要徒手编写这个文件了。...本地测试 NuGet 包 在发布 NuGet 包之前,我们可以先在本地安装测试。...这时安装,编译完之后,我们就会发现我们的项目生成的 dll 中多出了一个“逗比(Doubi)”类,并且可以在那个项目中编写使用 Doubi 的代码了。

    1.9K10
    领券