在Windows系统中构建还原ASP.NET Core 源码
大家好,這幾天試著從Github上拉取AspNetCore的源碼,嘗試著通過Visual Studio 打開,但是并不盡人意。我們需要去構(gòu)建我們拉去的源代碼,這樣才可以通過VisualStudio可還原的項(xiàng)目。畢竟AspNetCore是一個巨型的項(xiàng)目集。
先決條件
在Windows中構(gòu)建AspNetCore源碼的要求有以下硬件需求。
Windows 10版本1803或更高版本
至少10 GB的磁盤空間和良好的網(wǎng)絡(luò)(我們的構(gòu)建腳本下載了很多工具和依賴項(xiàng))
Visual Studio 2019 (因?yàn)樗鐲++某些運(yùn)行庫,就算你的Windows中有先決條件的Visual Studio ,你有時也不會勾選C++等運(yùn)行庫,所以我們還是要運(yùn)行下,大概四個多G)
要安裝所需的確切組件,請運(yùn)行./eng/scripts/InstallVisualStudio.ps1
PS> ./eng/scripts/InstallVisualStudio.ps1
Git 工具
NodeJS。LTS版本10.14.2或更高版本https://nodejs.org
Java Development Kit 11或更高版本。要么:
OpenJDK?https://jdk.java.net/
甲骨文的JDK?https://www.oracle.com/technetwork/java/javase/downloads/index.html
要安裝此回購協(xié)議只能使用的JDK版本,請運(yùn)行eng / scripts / InstallJdk.ps1
./eng/scripts/InstallJdk.ps1
Chrome-基于硒的測試需要安裝一個版本的Chrome。從[ https://www.google.com/chrome ]?下載并安裝它
拉取代碼
ASP.NET Core使用git子模塊來包含其他一些項(xiàng)目的源代碼。
對于項(xiàng)目的新副本,運(yùn)行:
git clone --recursive https://github.com/aspnet/AspNetCore如果第一次沒有通過,則可以再更新,再?.\restore.cmd?:
git submodule update --init --recursive為了以后的管理,您可以選擇迭代,切換并創(chuàng)建一個分支。
git checkout (要使用的版本)v3.1.0 -b test還原代碼
在Github拉取代碼之后,您需要執(zhí)行以下操作,這將下載所需的工具并還原整個存儲庫一次。
.\restore.cmd這個時候,您應(yīng)該可以通過Visual Studio 或者 Vs Code 打開您想打開的項(xiàng)目了,但是打開之后會發(fā)現(xiàn),缺少很多本身項(xiàng)目所需的依賴庫。
構(gòu)建代碼
構(gòu)建代碼的前提是您的還原代碼通過了。否則則會直接構(gòu)建失敗,這里的Windows命令行如下:
.\build.cmd該操作會耽誤您的一點(diǎn)時間,考慮到一般的計(jì)算機(jī),差不多會用到十分鐘多一點(diǎn),當(dāng)然這是在您網(wǎng)絡(luò)良好的情況下。
通過Visual Studio 享受美食
?一些問題
? 像NodeJs 和 Java JDK 一定要裝好,最好在PowerShell執(zhí)行以上操作。
問題一:
PowelShell出現(xiàn)?無法加載文件 ******.ps1,因?yàn)樵诖讼到y(tǒng)中禁止執(zhí)行腳本。有關(guān)詳細(xì)信息,請參閱?"get-help about_signing"。?,請?jiān)趐owershell中執(zhí)行??set-ExecutionPolicy RemoteSigned?.
問題二:
如果找不到SDK,請啟動Visual Studio,轉(zhuǎn)到“?工具”>“選項(xiàng)”,然后在“?環(huán)境”>“預(yù)覽功能”下選中“?使用.NET Core SDK的預(yù)覽”。
最后希望大家順利還原并構(gòu)建源代碼!~
更多資料
https://github.com/aspnet/AspNetCore/blob/master/docs/BuildFromSource.md
總結(jié)
以上是生活随笔為你收集整理的在Windows系统中构建还原ASP.NET Core 源码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 戴明博士:管理的十四项原则
- 下一篇: 用HttpReports快速搭建API分