1. clone 源码

下载新的

git clone --recursive https://github.com/dotnet/aspnetcore

如果之前clone过,但是没有使用 --recursive参数

可以使用下面命令

git submodule update --init --recursive

git submodule sync --recursive;
git submodule update --init --force --recursive

注意--recursive是必须的 , 因为: ASP.NET Core uses git submodules to include the source from a few other projects.

2. 切换分支到v3.1.5

git checkout v3.1.5
git checkout -b myV3.1.5

如果git版本>=2.23 , git checkout -b myV3.1.5 这条命令也可以替换为 git switch -c myV3.1.5

3. 编辑项目根目录的nuget.config

去掉源链接中包含"darc-int"的链接 (这些是微软内部的源,外部人员无法使用)

如 下面这些需要去掉:

<add key="darc-int-dotnet-extensions-be18161" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-extensions-be18161f/nuget/v3/index.json" />
<add key="darc-int-dotnet-efcore-509fe04" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-efcore-509fe041/nuget/v3/index.json" />
<add key="darc-int-dotnet-core-setup-3acd9b0" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-core-setup-3acd9b0c/nuget/v3/index.json" />
<add key="darc-int-dotnet-corefx-059a4a1" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-corefx-059a4a19/nuget/v3/index.json" />
<add key="darc-int-dotnet-aspnetcore-tooling-d63ec4a" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-aspnetcore-tooling-d63ec4a1/nuget/v3/index.json" />

4.安装工具和其他软件

安装vs ,即使已经安装过vs了 ,也推荐执行下面这个脚本。

因为自己安装的vs可能少安装一些组件啥的 ;

run eng/scripts/InstallVisualStudio.ps1.

其他需要安装的还有

  • Git. https://git-scm.org
  • NodeJS. LTS version of 10.14.2 or newer https://nodejs.org.
  • Install yarn globally (npm install -g yarn)
  • Java Development Kit 11 or newer. OpenJDK ,Oracle's JDK 都是可以的

    配置 JAVA_HOME 环境变量 (这里有点不明白了 ,为啥编译C#需要Java)

5. restore

在powershell中执行 .\restore.cmd ,

这期间还会下载一些压缩包啥的 ,比较耗时, 注意能否访问国外网站;

6. build

还是在powershell中执行 .\build.cmd

也会下载东西,比较耗时,但是耗时比restore花费的少一些

7. 在vs中打开项目

使用脚本 .\src\Mvc\startvs.cmd ,打开vs ;

这个脚本设置了一下启动时需要的变量,推荐使用这个脚本打开vs;

vs启动后 ,可能会出现加载项目失败的情况 ,这时找到根目录的global.json ,修改里面的SDK版本,改成自己电脑上已经安装的SDK版本;

以我的电脑为例,

C:\Windows\system32>dotnet --info

.NET Core SDK(反映任何 global.json):
Version: 3.1.301
Commit: 7feb845744

那么将原来的global.json中的

"sdk": {
"version": "3.1.103"
},

改成

"sdk": {
"version": "3.1.301"
},

重新加载项目即可 ,另外这里面有个sample ,位置是在: 根目录\src\Mvc\samples\MvcSandbox

下载、编译AspNetCore 的全过程的更多相关文章

  1. (1)redis下载编译

    一.redis下载编译 这里没什么好说的 用的版本是redis-2.8.17 1)redis-server是可执行程序 2)mian函数在redis.c里面 3)如果要修改调试 这届在src目录下   ...

  2. 下载编译Chrome详细步骤

    文章来源:http://blog.csdn.net/allendale/article/details/9262833 参考:http://dev.chromium.org/developers/ho ...

  3. 【Android 系统开发】CyanogenMod 13.0 源码下载 编译 ROM 制作 ( 手机平台 : 小米4 | 编译平台 : Ubuntu 14.04 LTS 虚拟机)

                 分类: Android 系统开发(5)                                              作者同类文章X 版权声明:本文为博主原创文章 ...

  4. 更新vs2017 15.9.2后,在指定-T v141_xp情况下载编译会报下面warning MSB8051

    更新vs2017 15.9.2后,在指定-T v141_xp情况下载编译会报下面warning: C:\Program Files (x86)\Microsoft Visual Studio\2017 ...

  5. Spring源码研究--下载-编译-导入eclipse-验证

    一,环境配置 操作系统:Unbutu14.04LTS JDK: 1.8.0_40 git: 1.9.1 gradle: 2.2.1 二,源码下载-编译-导入eclipse-验证 1,下载 使用git直 ...

  6. webrtc所有平台下载编译步骤详细说明

    webrtc所有平台下载编译步骤详细说明 1.安装depot tools Windows:国外下载:https://storage.googleapis.com/chrome-infra/depot_ ...

  7. 下载编译 Android wear 源代码,尝试制作可穿戴设备功能

    体验 Android Wear 缘由: Android wear 代码公布已经非常久了.一直没有尝试,这里是个编译的过程和步骤,假设要尝试.本文假定读者已经有下载编译 Android  的经验,假设没 ...

  8. Android 程序分析环境搭建-Android 9 -代码下载编译

    Android 9 -代码下载编译 一,翻墙下载: 1.背景: 背景: 现在Android framework 开发的同学,整体在公司里面解一些无关痛痒的bug,对于Android framework ...

  9. Ubuntu 下载 & 编译 Android5.1 源码

    ustc & tsinghua android srchttps://lug.ustc.edu.cn/wiki/mirrors/help/aosphttps://mirrors.tuna.ts ...

  10. perl6的介绍与下载编译安装

    遇到perl6 一直想认真的学习一门脚本语言或者与之类似的语言,因为相对与c++/c来说,一些工作可以很方便的用脚本语言来解决,比如对于日志文件的处理,自动ftp上传. 也看过不少语言的介绍,比如py ...

随机推荐

  1. ArcEngine 序列化AO对象

    ArcEngine中只要是继承了IPersistStream接口的对象均可调用ArcEngine中的类库进行序列化和反序列化.一般我们会序列化成xml格式,作为字符串存储,需要的时候,反序列化为对象. ...

  2. python 运算优先级

    python 运算优先级,请见下图

  3. 【leetcode】剑指offer04二维数组查找

    很巧妙地把矩阵转化为二叉搜索树(不过好像没什用) class Solution { public: bool findNumberIn2DArray(vector<vector<int&g ...

  4. 精华推荐 | 【深入浅出RocketMQ原理及实战】「性能原理挖掘系列」透彻剖析贯穿RocketMQ的事务性消息的底层原理并在分析其实际开发场景

    什么是事务消息 事务消息(Transactional Message)是指应用本地事务和发送消息操作可以被定义到全局事务中,要么同时成功,要么同时失败.RocketMQ的事务消息提供类似 X/Open ...

  5. 基于Unet+opencv实现天空对象的分割、替换和美化

           传统图像处理算法进行"天空分割"存在精度问题且调参复杂,无法很好地应对云雾.阴霾等情况:本篇文章分享的"基于Unet+opencv实现天空对象的分割.替换和 ...

  6. WPF 自定义附加事件

    我们都知道路由事件,而附加事件用的比较少. 但如果是通用的场景,类似附加属性,附加事件就很有必要的. 举个例子,输入设备有很多种,WPF中输入事件主要分为鼠标.触摸.触笔:WPF 屏幕点击的设备类型 ...

  7. 使用Git提交代码

    目录 1.提交前准备工作 2.代码提交步骤 3.从git上面拉代码 4.Git变更集 5.参考资料 1.提交前准备工作 首先去git官网下载git工具(Git GUI Here.Git Bash He ...

  8. Hadoop详解(02)Hadoop集群运行环境搭建

    Hadoop详解(02)Hadoop集群运行环境搭建 虚拟机环境准备 虚拟机节点数:3台 操作系统版本:CentOS-7.6-x86-1810 虚拟机 内存4G,硬盘99G IP地址分配 192.16 ...

  9. Linux基础操作-01

    Linux操作系统 很多IC设计的EDA工具都是在Linux系统中进行运行的,在IC设计的从业者都需要熟练掌握Linux操做.可以不掌握Linux原理,但是操作要熟练. Linux 操作系统的特点 多 ...

  10. 基础分类算法_KNN算法

    KNN(K-NearestNeighbor)算法 KNN算法是有监督学习中的分类算法. KNN算法很特殊,可以被认为是没有模型的算法,也可以认为其训练数据集就是模型本身. KNN算法的原理 KNN的原 ...