dotnet run 命令介绍

内容分享23小时前发布 DunLing
0 0 0

前言

本篇主要介绍 asp.net core 中,使用 dotnet tools 运行 dotnet run 之后的系统执行过程。 如果你觉得对你有协助的话,不妨点个【推荐】。

目录

  • dotnet run 介绍
  • dotnet run 使用
  • dotnet run 执行过程

dotnet run 介绍

dotnet 相关命令是属于 .NET Core command-line (CLI) 的一部分,Microsoft 为我们提供了这个命令行工具以供我们在开发程序中使用,它主要用来进行对代码的编译、NuGet 包的管理、程序的运行、测试等等。

目前 asp.net core RC2 版本中,Tools 工具的版本为Preview1版本,而在 RTM 版本中,Tools 工具的版本为 Preview2。

dotnet 命令目前支持一下操作系统或者 OS 版本:

  • Ubuntu 14.04 / Linux Mint 17
  • Ubuntu 16.04
  • Debian 8.2
  • Windows x64
  • Windows x86
  • Mac OS X
  • CentOS 7.1 / Oracle Linux 7.1
  • RHEL 7.2
  • OpenSUSE 13.2
  • Fedora 23

下面是 dotnet run 命令在运行程序的时候可以使用的参数列表

dotnet run [--framework] [--configuration] [--project] [--help] [--]

-f, –framework

使用提供的 framework 来运行,这个 framework 就是对应project.json文件中的 frameworks 节点

-c, –configuration [Debug|Release]

配置使用的环境是 Debug 还是 Release,默认为 Debug 模式。

-p, –project [PATH]

指定要运行的项目,它可以是project.json的文件路径,可以是包含project.json的路径,如果没有指定,默认是当前路径。

所以在运行dotnet run命令的时候,如果想偷懒,不想指定-p参数的话,把命令行的工作目录设定为项目的project.json所在的文件夹路径就可以了。

dotnet run 使用

信任有使用过 Node、Python、GO、Ruby等语言开发过程序的朋友们,对命令行必定不会陌生,使用命令行可以协助他们完成大部分程序的构建和生成工作,而目前.net 也可以像这些语言一样,通过命令行来运行了,甚至比他们更加的简单,简单的介绍一下:

1、安装

在 http://www.dot.net站点中,你可以很方便的看到在各个平台之间,dotnet 工具的安装方式。

打开 http://www.dot.net, 选择 .Net Core 然后 Step by Step 就可以了。

2、创建一个Hello World

你可以使用dotnet new命令来创建一个控制台的 Hello World~

3、编译和运行

使用dotnet run会帮你进行编译和运行 Hello World 程序。

下面是我的mac 上的一个命令行截图:

主要步骤:

dotnet new  

dotnet restore  

dotnet run  

dotnet run 执行过程

已经知道了 dotnet 实则 CLI 里面的是一个命令行工具聚焦的一个命令。并且也已经会使用 dotnet run来运行我们的应用程序了,那么它内部是如何执行的呢?

dotnet run命令是依赖于dotnet build命令的,在运行 run 命令之前,系统会在内部调用 build 命令来生成代码,在运行dotnet build命令的时候,第一会检测程序中是否存在bin文件夹,如果不存在就会创建它,然后把生成的文件放到bin文件夹。然后 obj 文件夹中会存放程序生成的临时文件。

有一点需要注意的是dotnet run命令的执行环境为项目程式代码的上下文,而不是 bin 或者 obj 文件夹,如果你需要运行一个 dll 程序,使用 dotnet 命令:dotnet xxx.dll,而不是dotnet run xxx.dll

本文地址:
http://www.cnblogs.com/savorboard/p/dotnet-run.html

作者博客:Savorboard

欢迎转载,请保留出处

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...