NET Core 环境搭建和命令行CLI入门[转]
2021-06-10 01:02
标签:10.10 schedule display depend label variant base package initial 标签: 2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高,很有必要写个深入浅出的系列文章,本节内容帮助你入门。我将可能用Windows做开发环境,也可能用Linux/Mac,但是所有的dotnet CLI命令都是跨平台的,我们在windows/Linux/mac平台上开发跨平台的应用。 .NET Core 包括.NET Core Runtime 和 .NET Core SDK: 下载地址请到dotnet官方网站dot.net (dot dot net),非常的好记,这个网站也是你入门学.NET Core的入口网站,记住这是个必须要去网站。.NET Core 下载的具体地址:https://www.microsoft.com/net/download#core,这里还列出了注意事项: .NET Core 的具体安装方法可以参看文章 .Net Core 系列:1、环境搭建。 .NET Core 的dotnet 命令行接口(CLI)非常重要,是我们开发,运营都要使用的一套工具,Microsoft 为我们提供了这个命令行工具以供我们在开发程序中使用,它主要用来进行对代码的编译、NuGet 包的管理、程序的运行、测试等等。简单的说 :当一个新人坐在座位上开始学习node, python, ruby, golang 或者其它任何东西时,对于绝大多数人来说,按照他们的经验就应该如此。使用.NET应当被看做是一件简单的不能再简单的事了。学习并且使用.NET 的伙伴们有着在Go或者Ruby上有相同的经验。这篇文章 .NET Core dotnet 命令大全 介绍了命令行的使用方法,dotnet run 命令介绍 更详细的介绍了dotnet run命令。练习例子可以用文章 通过几个Hello World感受.NET Core全新的开发体验。 我们就来通过一个Hello World例子来学习下dotnet 命令行,我们安装好.NET Core 1.0,就可以做下面的事情了: >dotnet new 想象着和我一块儿,当你把这个和在Mac, Windows, Linux上运行的 Visual Studio代码相比较时,那么你已经获得了一个非常精彩的故事。可以很容易的在很多地方运行开源的.NET 代码。 下面是一段比较长的的代码,创建一个控制台应用,只要在顶部输入“dotnet”,就可以得到很多能用的东西。 [root@Mono helloworld]# dotnet Microsoft .NET Core Shared Framework Host Version : 1.0.1 Usage: dotnet [common-options] [[options] path-to-application] Common Options: Options: Path to Application: If you are debugging the Shared Framework Host, set ‘COREHOST_TRACE‘ to ‘1‘ in your environment. To get started on developing applications for .NET Core, install .NET SDK from: [root@Mono ~]# mkdir helloworld Compilation succeeded. Time elapsed 00:00:03.0002808 通过上面这几个基本命令就把我们的.NET Core 应用运行起来了。 new 命令用于创建.NET项目或者是应用 Usage: dotnet new [options] Options: 可以用这个命令创建几个不同类型的的应用类型,支持C#和F#,C#语言支持的项目类型如下: restore命令使用NuGet还原在项目文件project.json 中定义的依赖关系和项目特定的工具。 Arguments: Options: 正如你可以看到从"用法:"上面的一行,还原命令只调用到 nuget3
可执行程序,通常您不需要修改这些选项,如果您使用的自定义软件包源,要么因为您正在使用预发布版本的 Microsoft
库或您的组织使用其自己的软件包源,您可能需要指定使用-s 参数的软件包源。 运行 dotnet 还原生成一个锁文件 (project.json.lock),其中包括有关所有被恢复的软件包的详细的信息。 build命令会把项目和他所依赖的项目编译成一个二进制文件,默认情况下二进制文件是Intermediate Language (IL) 和.dll 为文件扩展名。编译过程依赖于已经存在锁文件(project.json.lock),这是restore命令生成的。 为了生成一个可执行的应用程序,您需要确保该项目配置的编译选项设置应用的入口点︰ 你可以使用-f 选项来指定你想要编译为一个特定框架。这一框架必须在项目文件中定义。-C 选项允许您指定要使用的配置。它将默认为Debug,但您可以指定为Release。 大多数情况下,你都是跳过上面的restore,build,直接使用dotnet run命令来运行程序,无论是否修改了应用程序,都是重新编译生成应用并运行。 -f, --framework 使用提供的 framework 来运行,这个 framework 就是对应 -c, --configuration [Debug|Release] 配置使用的环境是 Debug 还是 Release,默认为 Debug 模式。 -p, --project [PATH] 指定要运行的项目,它可以是 可以用dotnet命令运行已经编译好的应用,把应用路径作为参数传递给dotnet命令 > dotnet .\bin\Debug\netcoreapp1.0\helloworld.dll pack命令编译项目并生成NuGet包,该操作会生成两个NuGet程序包: 项目依赖的NuGet项目添加到生成nuspec文件中,默认情况不打包项目之间的引用关系,但可以通过更改项目的相关性类型。 发布命令会编译应用程序并读取项目文件,然后将结果集的文件发布到一个目录。生成目录的内容将取决于项目的类型,但可以包括一个跨平台的 IL
应用程序和他依赖项,这就是通常用的Portable部署方式,应用程序共享.NET
Core运行时环境与程序集依赖,部署的目标机器上需要事先安装.NET Core
SDK,然后用dotnet命令运行程序。或者是每个本机平台的子文件夹或自包含的应用程序,其中包括目标平台的运行时,这就是Self-contained部署方式。Self-contained部署方式就是每个应用程序自带.NET
Core运行时环境与程序集依赖,部署的目标机器不需要安装.NET Core SDK,将应用程序文件夹拷贝过来就能运行。具体参考文档参考文档 .NET Core Application Deployment 默认的project.json编译出来的应用没有包括跨平台,需要修改project.json文件,需要在 project.json 加入 runtimes 节点 注释掉 "type": "platform"。 { "runtimes":{ } 首先我们要dotnet restore,这里我还原的时候有些久,大家耐心等待一下,因为我们设置4个平台。 dotnet publish -r centos.7-x64 这个生成部署文件的操作是可以跨平台的,在Windows上通过 dotnet publish -r centos.7-x64 命令生成Linux的部署文件,然后将整个部署文件夹上传到Linux服务器。 测试命令用来运行测试项目,使用配置的测试运行程序中定义的测试套件。你会了解更多有关此命令在本教程的后面的章节里了解更详细的内容。 下次我们将深入了解一下到 project.json 文件,并开始尝试在如何构建更复杂的应用程序与新的.Net Core。 原文地址:http://www.soscw.com/info-detail-1426076.html NET Core 环境搭建和命令行CLI入门[转] 标签:10.10 schedule display depend label variant base package initial 原文地址:http://www.cnblogs.com/jimcsharp/p/7297699.htmlNET Core 环境搭建和命令行CLI入门
NET Core 环境搭建和命令行CLI入门
安装.NET Core
dotnet Command Line Interface(CLI)
>dotnet restore
>dotnet run
Build : cee57bf6c981237d80aa1631cfe83cb9ba329f12
--help Display .NET Core Shared Framework Host help.
--version Display .NET Core Shared Framework Host version.
--fx-version
--additionalprobingpath
The path to a .NET Core managed application, dll or exe file to execute.
http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
[root@Mono ~]# cd helloworld
[root@Mono helloworld]# dotnet new
Created new C# project in /root/helloworld.
[root@Mono helloworld]# ls
Program.cs project.json
[root@Mono helloworld]# vi Program.cs
[root@Mono helloworld]# dotnet restore
log : Restoring packages for /root/helloworld/project.json...
log : Writing lock file to disk. Path: /root/helloworld/project.lock.json
log : /root/helloworld/project.json
log : Restore completed in 2277ms.
[root@Mono helloworld]# dotnet run
Project helloworld (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing
Compiling helloworld for .NETCoreApp,Version=v1.0
0 Warning(s)
0 Error(s)
Hello World!
[root@Mono helloworld]#
dotnet new
[root@Mono ~]# dotnet new --help
.NET Initializer
-h|--help Show help information
-l|--lang
-t|--type
dotnet restore
[root@Mono ~]# dotnet restore --help
Usage: nuget3 restore [arguments] [options]
[root] List of projects and project folders to
restore. Each value can be: a path to a project.json or global.json
file, or a folder to recursively search
fo r
project.json files.
-h|--help Show help information
--force-english-output Forces the application to run using an invariant, English-based culture.
-s|--source dotnet build
"buildOptions": {
"emitEntryPoint": true
},
运行命令可以看到使用方法:
> dotnet build --help
.NET Builder
Usage: dotnet build [arguments] [options]
Arguments:
dotnet run
> dotnet run --help
.NET Run Command
Usage: dotnet run [options] [[--] ...]]
Options:
-h|--help Show help information
-f|--framework Compile a specific framework
-c|--configuration Configuration under which to build
-p|--project The path to the project to run (defaults to the current directory). Can be a path to a project.json or a project directory
dotnet run 命令介绍 更详细的介绍了dotnet run命令
project.json
文件中的 frameworks 节点project.json
的文件路径,可以是包含project.json
的路径,如果没有指定,默认是当前路径。dotnet [assemblyname]
Hello World!dotnet pack
dotnet publish
"version": "1.0.0-*",
"buildOptions": {
"debugType": "portable",
"emitEntryPoint": true
},
"dependencies": {"hwapp":"1.0.0"},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0"
}
},
"imports": "dnxcore50"
}
},
"win7-x64": { },
"win7-x86": { },
"osx.10.10-x64": { },
"osx.10.11-x64": { },
"ubuntu.14.04-x64":{ },
"centos.7-x64":{}
}dotnet test
上一篇:js特效之上下翻页相册效果
下一篇:js获取URL地址