在将一个 .NET CORE \ .NET 5.0 \ .NET 6.0 程序进行独立部署发布时,会在发布目录产生很多系统类库,导致目录非常不简洁。这给寻找入口程序造成了困难,特别是路遥工具箱这种绿色软件,不会在开始菜单、系统桌面创建快捷方式,如此多的文件直接将小白用户劝退。

独立部署时会产生大量的系统文件,难以找到应用程序的入口。

使用 NetCoreBeauty 优化目录结构

NetCoreBeauty moves .NET Core app runtime components and dependencies into a sub-directory to make it beautiful.

NetCoreBeauty 会将 .NET Core 软件的运行时组件和依赖移动到一个子目录中,让发布文件看起来更简洁漂亮。

路遥工具箱使用 NetCoreBeauty 优化了目录结构

NetCoreBeauty 的开源地址在:https://github.com/nulastudio/NetCoreBeauty

如何使用 NetCoreBeauty

NetCoreBeauty 只适用于独立部署发布模式的程序。

为项目添加 Nuget 引用:

dotnet add package nulastudio.NetCoreBeauty

编辑项目配置文件(*.csproj)应该和下面的代码类似:

<Project Sdk="Microsoft.NET.Sdk"><PropertyGroup><OutputType>Exe</OutputType><TargetFramework>netcoreapp2.1</TargetFramework><!-- beauty into sub-directory, default is libs, quote with "" if contains space  --><!-- 要移动到字母名称,默认是 libs 目录,如果需要包含空格,请用双引号括起来 --><BeautyLibsDir>libraries</BeautyLibsDir><!-- 设置一些你不想被移动或者不能被移动到子目录的文件名,支持匹配。--><!-- dlls that you don't want to be moved or can not be moved --><!-- <BeautyExcludes>dll1.dll;lib*;...</BeautyExcludes> --><!-- 最终用户不会使用到的文件,可以在这里配置隐藏掉。--><!-- dlls that end users never needed, so hide them --><!-- <BeautyHiddens>hostfxr;hostpolicy;*.deps.json;*.runtimeconfig*.json</BeautyHiddens> --><!-- 如果不想执行移动操作,可以设置为 True --><!-- set to True if you want to disable --><DisableBeauty>False</DisableBeauty><!-- set to True if you don't want to generate NetCoreBeauty flag file --><!-- do not beauty twice since there is no flag file to determine if beauty already --><NoBeautyFlag>False</NoBeautyFlag><ForceBeauty>False</ForceBeauty><!-- <BeautyAfterTasks></BeautyAfterTasks> --><!-- set to True if you want to disable --><DisablePatch>False</DisablePatch><!-- valid values: Error|Detail|Info --><BeautyLogLevel>Error</BeautyLogLevel><!-- 设置仓库镜像,如果你不能链接到 GitHub 的话可以采用该设置。推荐大陆用户打开这个配置。--><!-- set to a repo mirror if you have troble in connecting github --><!-- <GitCDN>https://gitee.com/liesauer/HostFXRPatcher</GitCDN> --><!-- <GitTree>master</GitTree> --></PropertyGroup><ItemGroup><PackageReference Include="nulastudio.NetCoreBeauty" Version="1.2.9.3" /></ItemGroup></Project>

以上中文翻译来由以下公众号提供

在你使用 dotnet publish 命令或者 Visual Studio 发布时,移动工作将自动进行。

官方提供了一个测试项目,可以在这里看到源代码:

https://github.com/nulastudio/NetCoreBeauty/tree/master/NetCoreBeautyNugetTest

路遥工具箱

路遥工具箱是笔者在学习 WPF 时练手做的一个小工具,主要用于解决一些开发过程中常见的功能性需求,并将其自动化。截至目前,本工具已拥有十数项功能。

为了方便最终用户,笔者在不久前将路遥工具箱设置为了独立部署发布,本文正是笔者对该过程中遇到问题的解决方案记录。

如果你对路遥工具箱感兴趣,可以在这里下载:

https://www.coderbusy.com/luyao-toolkit

使用 NetCoreBeauty 优化 .NET CORE 独立部署目录结构相关推荐

  1. 前端优化-- CDN的使用网站目录结构的设计优化原则

    CDN的使用 background:url(//img.mdcdn.cn/h5/img/common/global_sprite.png) 上面的代码如果你能完全看懂,那么这一小部分就可以不用看了. ...

  2. java获取项目的部署目录结构_JAVA WEB项目目录结构以及web应用部署的根目录,编译路径和项目根目录的区别...

    本文链接:https://blog.csdn.net/l00149133/article/details/78984083 web应用部署的根目录,编译路径和项目的根目录有什么区别? 直接上例子: 你 ...

  3. javaweb可部署目录结构

    webApp //项目名称 -META-INF --MANIFEST.MF -WEB-INF --classes   //编译class文件 --lib  //依赖jar --web.xml -ind ...

  4. php tp框架调用m层,TP学习笔记一(tp的目录结构 , tp的输出方式)

    一.ThinkPHP的介绍 //了解 MVC M - Model 模型 工作:负责数据的操作 V - View 视图(模板) 工作:负责前台页面显示 C - Controller 控制器(模块) 工作 ...

  5. views 多个文件夹 netcore_Visual Studio 2019发布.NET Core项目部署或者独立运行的方法...

    Visual Studio 2019发布.NET Core项目部署或者独立运行的方法 Visual Studio 2019是一款专为程序开发人员设计,支持 Windows 和 Mac系统,适用范围广, ...

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

    作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9703460.html NET Core项目发布的时候你有没有注意到这两个选项呢?有没有纠结过框架依赖与独 ...

  7. 改造独立部署(SCD)模式下.NET Core应用程序 dotnet的exe文件启动过程

    设置一个小目标 改造前 改造后 独立部署SCD模式,是指在使用dotnet publish 命令时带上-r 参数运行时标识符(RID). 目标提出原因:SCD模式下文件太乱了,很多文件在开发时大多又涉 ...

  8. linux jetty 安装目录结构,Linux下Jetty 9安装部署

    Jetty简介 Jetty是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境.Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布. ...

  9. 优化 .net core 应用的 dockerfile

    优化 .net core 应用的 dockerfile Intro 在给 .net core 应用的写 dockerfile 的时候一直有个苦恼,就是如果有很多个项目,在 dockerfile 里写起 ...

最新文章

  1. 【ES6】字符串的拓展
  2. 010-你觉得单元测试可行吗
  3. Oracle中的Union、Union All、Intersect、Minus
  4. 网络层:IP 协议(用于封装 IP)
  5. boost::gil::view_is_basic用法的测试程序
  6. PHP的闭包函数匿名函数
  7. 解决在非Activity中使用startActivity
  8. 启动mq 在虚拟机中_记在使用rocketmq client客户端过程中踩到的坑
  9. 2020年编程现状:Python将成为第一大编程语言,中国开源涨势最猛
  10. CVPR 2020 论文大盘点—目标跟踪篇
  11. suse linux系统备份,suse linux enterprise server 11 sp3 版克隆安装ebs r12.1.3注意事项
  12. Oracle RAC FTA
  13. 什么是大数据,模式识别和人工智能算法实现
  14. JVM 图形化监控工具
  15. Windows电脑上有哪些好用的txt小说阅读器?
  16. windowsxp系统怎么装iis服务器,win xp系统安装IIS的详细步骤【图文】
  17. Linux服务器远程连接
  18. 四大名著红楼梦第一回 甄士隐梦幻识通灵 贾雨村风尘怀闺秀
  19. 强烈推荐张玉宏《深度学习之美》成书前的《深度学习系列十四篇》
  20. 计算某年新年是星期几的公式【不过这天怎么也该是假期吧?】

热门文章

  1. Windows下的gcc/gc++编译环境配置
  2. TAR命令参数详解[转]
  3. android天气查询(二)之网络json数据的获取
  4. LeetCode 581. 最短无序连续子数组(Shortest Unsorted Continuous Subarray)
  5. HDU - 5686-Problem B (递推+高精)
  6. 菜鸟学习MVC实录:弄清项目各类库的作用和用法
  7. 详细的DedeCMS(织梦)目录权限安全设置教程
  8. 廖雪峰 练习 把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字...
  9. ArrayList 的实现原理
  10. Win7系统中必需记住的14个常用快捷键