在.net core发布之初,dotnet cli就诞生了,dotnet cli的作用是什么呢?主要是用来创建,还原,构建,发布,测试等一系统管理功能,本来,visual studio中是有这些功能的,那为什么还另外再提供一套呢?


注:其实在windows下的.net应用,也是可以通命令行来实现一些功能的,只是vs的功能太好用,太强大,用这些功能的人有限,给人感觉像没有一样


我总结有两个方面:

1、开发时:.net core(现在最新版叫.net5)跨平台了,不只只是在有可视化的平台上运行,所以提供dotnet cli是为在这些平台上顺利使用.net core

2、运维时:现在流行的devopt,也是dotnet cli发挥作用的战场,不管是独立部署的jenkins等工具,还是github,gitlab等云平台,都提供了CICD脚本化编辑功能,方便我们管理.net应用

下面的例子是gitlab的对.net core项目CI的gilab-ci.yml配置,其中16,20,21,24都是依赖dotnet cli来实现的:

image: mcr.microsoft.com/dotnet/core/sdk:2.2.301stages:- test- deployrelease:stage: deployonly:- masterartifacts:paths:- publish/script:# The output path is relative to the position of the csproj-file- dotnet publish -c Release -o ../publish MyProject/MyProject.csprojdebug:before_script:- 'echo | dotnet --version' # must be v 2.2.300 or later for reporter tool to work- dotnet tool install dotnet-reportgenerator-globaltool --tool-path toolsstage: testscript:- dotnet test --logger "junit" --collect:"XPlat Code Coverage"# each reporttype must be a separate line, doesn't work together ; separated- ls -ld ${CI_PROJECT_DIR}/**/TestResults/*- ./tools/reportgenerator "-reports:${CI_PROJECT_DIR}/**/TestResults/*/coverage.cobertura.xml" "-targetdir:Reports_Coverage" -reportTypes:TextSummary;- ./tools/reportgenerator "-reports:${CI_PROJECT_DIR}/**/TestResults/*/coverage.cobertura.xml" "-targetdir:Reports_Coverage" -reportTypes:Html;- ls Reports_Coverage- cat ./Reports_Coverage/Summary.txt- echo 'End Summary'coverage: /Line coverage[\s\S].+%/artifacts:paths:- Reports_Coverage/reports:junit:- '*.Test/TestResults/TestResults.xml'
.....此处省略

在dotnet cli中,有一个别有洞天的功能,就是dotnet tool了,这个功能给我们打开了一个广阔窗口,一个让我们自己造工具,自己使用工具的窗口。

比如最常见的我们可以造一个从DB生成实体类的工具(这类工具应该有很多);再比如源码漏洞检测的工具;甚至可以集成一些与项目管理,技术管理的功能(命名是否规范,定义是否规范,要求框架使用是否规范等等)

今天只是简单引入,关于dotnet tool详细介绍,敬请关注之后公众号文章。

您好,dotnet tool相关推荐

  1. 一个简单的dotnet tool

    dotnet tool对应的工具,本质上是一个控制台应用,在调用这个应用时,会根据传入的参数,执行应用内部的逻辑. 关于dotnet tool命令使用,参照https://docs.microsoft ...

  2. dotnet cli 5.0 新特性——dotnet tool search

    dotnet cli 5.0 新特性--dotnet tool search Intro .NET 5.0 SDK 的发布,给 dotnet cli 引入了一个新的特性,dotnet tool sea ...

  3. dotnet 手工打一个 dotnet tool 包

    现在依靠 dotnet 平台,可以方便分发工具,利用 NuGet 服务进行分发和使用工具.打一个 dotnet tool 包,可以将这个包上传到 NuGet 上,小伙伴通过和安装 NuGet 相同方式 ...

  4. dotnet tool

    常用工具 dotnet new dotnet add package Newtonsoft.Json dotnet new --install Microsoft.DotNet.Web.Spa.Pro ...

  5. 在 dotnet runtime 的容器中安装 dotnet global tool

    在 dotnet runtime 的容器中安装 dotnet global tool Intro .NET Core 从 2.1 开始支持 Global tool, 借助 global tool 我们 ...

  6. 小匕首-dotnet cli使用tool指令

    文章目录 一.指令清单 二.工具列表 三.查询工具 四.安装工具 4.1.当前目录安装 4.2.全局安装 五.更新工具 六.卸载工具 一.指令清单 指令详情 >dotnet tool -h De ...

  7. dotnet 将自动代码格式化机器人带入团队 GitLab 平台

    给团队带入一个 代码格式化机器人 能提升团队的幸福度,让团队的成员安心写代码,不用关注代码格式化问题,将格式代码这个粗活交给机器人去做.同时也能减少在代码审查里撕格式化问题的时间,让更多的时间投入到更 ...

  8. .NET GC 实时监控工具 dotnet gcmon 介绍

    今天介绍一个新的诊断工具 dotnet-gcmon, 也是全局 .NET CLI 工具, 它可以监控到 .NET 程序的 GC, 能获取到的信息也很详细, 另外 maoni 大佬也是其中的开发者之一. ...

  9. dotnet 基于 dotnet format 的 GitHub Action 自动代码格式化机器人

    是不是大家也会觉得代码审查里面审查代码格式化问题是无意义的,但是不审查又觉得过不去?是否有个专门的工具人,用来协助修复代码格式化的问题?本文来安利大家一个特别好用的方法,使用 dotnet 完全开源的 ...

最新文章

  1. auxprop mysql_Postfix 反垃圾过滤
  2. mysqldump: Got error: 1449
  3. linux进程signal,Linux 编程之【进程】signal
  4. 使用文章来增加流量和排名
  5. 每天一道Java题[4]
  6. Python定时任务轻量解决方案---Schedule
  7. ckeditor编辑的使用方法
  8. 随想录(386cpu保护模式)
  9. JAVA类的无参方法
  10. python逻辑运算符例子_python运算符-实战中常用的三个逻辑运算符使用实例
  11. 64位计算机安装xp,Windows XP(64位)如何安装语言包
  12. java application.doevents_关于Application.DoEvents()的小研究
  13. Android复制文件
  14. 二元二次方程例题_二元二次方程组 解法 例题
  15. 泰坦尼克号任务-模型建立和评估
  16. 数组下标访问越界导致溢出1
  17. 手机如何html5音频取,怎么用手机把视频里的音频提取?
  18. SSL Tomcat 双向认证
  19. 石头说:一道黑色的光,飞速地向我走来。
  20. docker安装zookeeper3.4

热门文章

  1. js之 foreach, map, every, some
  2. this表示当前对象简单实例
  3. 个人站立会议-----20181216
  4. shell脚本--cut命令
  5. [20140928]创建连接到MySQL的连接服务器
  6. 大学生计算机课程考试试题,大学生计算机基础课程考试系统研究与实现
  7. 如何计算iPhone和Apple Watch上的步数
  8. IT:如何在Windows Server 2008 R2上安装Hyper-V虚拟化
  9. 如何使用wink框架_如何解决Wink Hub的Z-Wave连接问题
  10. 小米人员架构调整:组建中国区,王川任总裁