最近.net core如火如荼,國(guó)內(nèi)這方面環(huán)境搭建方面的文檔也非常多,但是不少已經(jīng)是過(guò)時(shí)的,就算按照那個(gè)流程走下去也避免不了一些地方早就不一樣了。所以下面我將從頭到尾的教大家搭建一次環(huán)境,并且成功運(yùn)行官網(wǎng)的demo。
一.系統(tǒng)環(huán)境
本次筆者因?yàn)閼械娜プ鎏摂M機(jī),所以注冊(cè)了一個(gè)云提供商的試用賬戶(hù)作為本次的主機(jī)。
系統(tǒng): Ubuntu Server 14.04.2 LTS 64bit
Mono: 1.0.0-rc1-update1
Coreclr: 1.0.0-rc1-update1
二.正文
1.首先我們先安裝Mono環(huán)境
1.1我們?cè)诳刂婆_(tái)先輸入:
內(nèi)容如下:
代碼如下:sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
1.2接著繼續(xù)輸入:
內(nèi)容如下:
代碼如下:echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
1.3繼續(xù)安裝:
內(nèi)容如下:
代碼如下:sudo apt-get update
1.4最后一步就開(kāi)始正式的下載mono并安裝了,耗時(shí)會(huì)比較長(zhǎng)
內(nèi)容如下:
代碼如下:sudo apt-get install mono-complete
1.5上面的步驟完成完畢之后要確認(rèn)是否安裝成功,并且版本正確,我們需要輸入下面指令去查看
這里需要注意下,讀者安裝完成后,請(qǐng)看下版本號(hào),你的版本號(hào)應(yīng)該和我一樣或者比我高,如果比我低后面的安裝會(huì)出現(xiàn)問(wèn)題,所以這里務(wù)必確認(rèn)安裝了正確版本的Mono。
2.安裝.Net版本控制(DNVM)
內(nèi)容如下:
代碼如下:curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh
3.安裝DNX
DNX就是net運(yùn)行環(huán)境,當(dāng)前提供了mono和.net core兩種方式,筆者將會(huì)安裝兩個(gè),并利用這兩個(gè)環(huán)境分別運(yùn)行我們的程序。
3.1安裝DNX必須工具
內(nèi)容如下:
代碼如下:sudo apt-get install libunwind8 gettext libssl-dev libcurl4-openssl-dev zlib1g libicu-dev uuid-dev
3.2安裝DNX for .net core
可以看到我們當(dāng)前下載的版本是 1.0.0-rc1-update1。
內(nèi)容如下:
代碼如下:dnvm upgrade -r coreclr
3.3安裝DNX for mono
之前我們僅僅只是安裝了mono,但是沒(méi)有安裝DNX對(duì)應(yīng)的mono sdk。
內(nèi)容如下:
代碼如下:dnvm upgrade -r mono
3.4驗(yàn)證我們安裝的DNX
下面我們通過(guò)下面的指令查看我們當(dāng)前安裝的DNX有些版本
可以看到我們安裝了對(duì)應(yīng)版本的mono實(shí)現(xiàn)和coreclr實(shí)現(xiàn),所以大家一定要了解dnvm、dnx、mono和coreclr的關(guān)系。
3.5安裝libuv
這個(gè)是運(yùn)行Web必須要安裝的一個(gè)庫(kù)。相關(guān)的命令如下,筆者就不再一一截圖了。
代碼如下:sudo apt-get install make automake libtool curlcurl -sSL https://github.com/libuv/libuv/archive/v1.8.0.tar.gz | sudo tar zxfv - -C /usr/local/srccd /usr/local/src/libuv-1.8.0sudo sh autogen.shsudo ./configuresudo makesudo make installsudo rm -rf /usr/local/src/libuv-1.8.0 && cd ~/sudo ldconfig
4.運(yùn)行官方示例
4.1為了能夠下載官網(wǎng)的示例,所以我們需要先安裝git
安裝完成之后我們?cè)趯⒐倬W(wǎng)的實(shí)例下載到本地
隨后我們?cè)偾袚Q到對(duì)應(yīng)的目錄下,在筆者的機(jī)器上通過(guò)下面的指令就可以到對(duì)應(yīng)版本的實(shí)例下
切換到該目錄之后通過(guò)ls我們可以查看到有哪幾個(gè)實(shí)例:
官方默認(rèn)提供了控制臺(tái),asp.net 5和asp.net mvc 6三個(gè)示例。
4.2利用mono和coreclr運(yùn)行控制臺(tái)示例
首先我們切換到該目錄下:
然后恢復(fù)下引用的庫(kù):
具體安裝時(shí)間要根據(jù)讀者的網(wǎng)絡(luò)環(huán)境決定,如果顯示如下界面表示安裝成功:
然后我們就可以利用DNX運(yùn)行了:
正確的輸出了。
下面我們將DNX切換到coreclr來(lái)運(yùn)行該程序:
成功切換,下面我們直接運(yùn)行:
也成功輸出了內(nèi)容。
4.3利用mono和coreclr運(yùn)行mvc
首先我們還是需要切換到對(duì)應(yīng)的目錄下,記住當(dāng)前我們的DNX是Coreclr:
恢復(fù)引用的庫(kù):
這個(gè)耗時(shí)可能比較長(zhǎng),因?yàn)橐脦?kù)比較多。繼續(xù)是安裝成功的界面:
這次運(yùn)行可不是dnx run了,如果你想試試可以試著運(yùn)行,最后的錯(cuò)誤相信讀者也能夠明白,這里我們需要通過(guò)其他的指令去運(yùn)行(dnx web):
我們成功的看到了最后的效果,下面我們切換到mono去運(yùn)行一次。
最后運(yùn)行依然還是DNX Web
參考:
http://druss.co/2015/03/vnext-install-asp-net-5-dnx-on-ubuntu/
https://docs.asp.net/en/latest/getting-started/installing-on-linux.html
https://github.com/dotnet/coreclr/blob/master/Documentation/install/get-dotnetcore-dnx-linux.md
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com