dotnet tools 运行 dotnet run

dotnet run 命令介绍

前言

本篇主要介绍 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

dotnet tools 运行 dotnet run的更多相关文章

  1. 尝试在mac上用dotnet cli运行asp.net core示例程序

    自从知道微软用dotnet cli取代dnx之后,一直在等dotnet cli支持asp.net core... 昨天看到这篇新闻(ASP.NET Core 1.0 Hello World)后,才知道 ...

  2. Cookies 初识 Dotnetspider EF 6.x、EF Core实现dynamic动态查询和EF Core注入多个上下文实例池你知道有什么问题? EntityFramework Core 运行dotnet ef命令迁移背后本质是什么?(EF Core迁移原理)

    Cookies   1.创建HttpCookies Cookie=new HttpCookies("CookieName");2.添加内容Cookie.Values.Add(&qu ...

  3. Docker上运行dotnet core

    下载microsoft/dotnet镜像 运行命令: docker pull microsoft/dotnet 如果没有使用阿里镜像加速的,参照这篇先配置好再跑上面命令: http://www.cnb ...

  4. EntityFramework Core 运行dotnet ef命令迁移背后本质是什么?(EF Core迁移原理)

    前言 终于踏出第一步探索EF Core原理和本质,过程虽然比较漫长且枯燥乏味还得反复论证,其中滋味自知,EF Core的强大想必不用我再过多废话,有时候我们是否思考过背后到底做了些什么,到底怎么实现的 ...

  5. dotnet tool install:Failed to install tool package 'ZKEACMS.Publisher': Could not find a part of the path 'C:\Users\Christer\.dotnet\tools\.store\.stage\0qd2mqpa.m45\ZKEACMS.Publisher'

    问题 按照 ZKEACMS 运行命令 dotnet tool install --global ZKEACMS.Publisher 提示 Failed to install tool package ...

  6. 使用vue框架运行npm run dev 时报错解决

    使用使用vue框架运行npm run dev 时报错 如下: 原因: localhost:8080 有可能其他软件占用了,导致其他问题的出现 我们可以动态修改地址 解决: 进入项目文件的config文 ...

  7. mpvue使用vant Weapp运行npm run build命令打包后失效

    最近在使用mpvue开发微信小程序,在开发过程中使用有赞的小程序ui框架—— vant Weapp ,至于如何使用在我个人博客中有一篇关于如何使用vant Weapp ,需要的同学请点进这里自行查看. ...

  8. 在mac下运行 npm run eject 出现报错问题解决方法

    当使用create-react-app创建项目后,接着运行npm run eject时,如果出现下面的错误 可能是脚手架添加了.gitignore这个文件,但是没有本地仓库,可以使用以下代码解决这个问 ...

  9. react 记录:运行npm run eject命令暴露配置文件都报这个错误

    问题: react 使用create-react-app命令创建一个项目,运行npm run eject命令暴露配置文件都报这个错误 原因:主要是脚手架添加 .gitgnore文件,但是却没有本地仓库 ...

随机推荐

  1. android-意图Intent

    Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递 Intent 来 ...

  2. Aptana jQuery自动提示

    参考 http://www.ghugo.com/aptana-studio-3-jquery-autocomplete/ 对于第一种方案 是每个项目都能生效的  不过有时候网络不好时就无法顺利获取提示 ...

  3. CPU卡

    CPU卡芯片通俗地讲就是指芯片内含有一个微处理器,它的功能相当于一台微型计算机.人们经常使用的集成电路卡(IC卡)上的金属片就是CPU卡芯片.CPU卡可适用于金融.保险.交警.政府行业等多个领域,具有 ...

  4. protel99se中做拼板图解

    很多时候我们要在protel99se中做拼板, 但是通常在复制进行拼版的时候会出现如下的效果,元件被重新命名了. 而无法达到我们需要的像下图的效果 那我们怎么办,才能达到上图的效果呢?其实操作很简单. ...

  5. 没有开发者账号,如何解锁wp8设备

    原文 http://www.cnblogs.com/vsdot/p/3263454.html 问题的引入 好了,问题的由来是这样的,我想把我开发的wp8手机部署到手机上,可是竟然出现了下面的问题: [ ...

  6. 转:PAT练习题概览

    AT(pat.zju.edu.cn)是一个面向 C/C++程序的 Online Judge 系统.相比 ZOJ,HDOJ,POJ 等 ACM 题库,PAT 的题目非常基础,对于数据结构.算法的入门是比 ...

  7. AttributeError: 'module' object has no attribute 'Thread'

    $ python thread.py starting at: 2015-08-05 00:24:24Traceback (most recent call last):  File "th ...

  8. SVN使用技巧

    安装 下载SVN服务端:VisualSVN Server https://www.visualsvn.com/downloads/ 安装,下一步...(更改地址,Location是安装目录,Repos ...

  9. [译]Stairway to Integration Services Level 13 - SSIS 变量回顾

    介绍 在前一篇中我们组合了已经学过的事件冒泡 event bubbling, 日志记录 logging, 和父子模型 Parent-Child pattern 建立了自定义的SSIS包日志记录. 本文 ...

  10. Redis初始化配置及增删改查

    package com.calc.tools import redis.clients.jedis.JedisPool import redis.clients.jedis.Jedis import ...