閱讀目錄:
娓娓道來
Install ASP.NET vNext Command Line Tools
安裝 Homebrew
使用 Homebrew,安裝 KVM
Install Sublime Text 3
Install Sublime Kulture Using the Package Control Plugin
Install Package Control Plugin
Install Sublime Kulture
Samples Test
Home 演示項目克隆到本地
在 Sublime Text 3 中,打開 HelloMvc
在 Sublime Text 3 中,恢復 NuGet 程序包
在 Sublime Text 3 中,編譯并運行 HelloMvc
generator-aspnet
寫在最后
前兩天寫了這樣一篇博文《Building Modern Web Apps-構(gòu)建現(xiàn)代的 Web 應用程序(一些感想)》,在博文的最后我有提到:
我個人覺得 MSDN 應該是 .NET 程序員常去的社區(qū),為什么?當你還在糾結(jié) ASP.NET Web Forms 和 ASP.NET MVC 時,你所不知道的是,人家已經(jīng)在 Mac OS 中使用 ASP.NET vNext 了。
關(guān)于 Mac OS 中構(gòu)建 ASP.NET vNext,雖然 ASP.NET vNext 正式版本還沒發(fā)布,但是老外早就已經(jīng)在嘗試了,甚至有個哥們錄制了一段視頻上傳到 YouTube,那我覺得咱們博客園也不能落后,下面摘自我在 Mac OS X 系統(tǒng)中構(gòu)建 ASP.NET vNext 的一些筆記,希望對那些狂熱 .NET 的童鞋們一些幫助。
需要聲明的是,其實我對 Mac OS X 系統(tǒng)以及 Mono 并不是很熟悉,因為當時時間有限,一些配置都是 Google 找的英文資料,所以有些地方我也是“知其然而不知所以然”,希望有時間可以深入研究下,本篇博文內(nèi)容你可以當作一個教程來讀。
首先,我先大致列一下,在 Mac OS X 系統(tǒng)中需要配置或安裝的東西:
這一部分我們的目的是:To install KVM(K Version Manager) and the correct version of Mono on OS X using Homebrew.
什么是 Homebrew?
Homebrew is the easiest and most flexible way to install the UNIX tools Apple didn’t include with OS X.
我們能夠通過終端方便的使用它安裝管理蘋果沒有自帶的 UNIX 相關(guān)工具軟件,這個很重要,因為下面我們所進行的安裝都是在“終端命令”中進行的,Homebrew 安裝命令為:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
Mac OS X 已經(jīng)自帶 ruby,所以我們可以直接使用 ruby,以上命令直接在粘貼在終端中執(zhí)行,詳細使用請參考:Homebrew
brew tap aspnet/k
to tap the ASP.NET vNext related git repositories.brew install kvm
to install KVM. This also automatically install the latest KRE package from https://www.myget.org/f/aspnetmaster/api/v2 feed.source kvm.sh
on your terminal if your terminal cannot understand kvm.注:下載并安裝 KVM 花的時間會比較長,最后一個命令是檢測 KVM 是否已經(jīng)成功安裝。
關(guān)于 Sublime Text,不管是 Windows,Mac OS,還是 linux,我們應該或多或少的接觸過,功能強大就不多說了。在 Mac OS 中打代碼,雖然沒有 Visual Studio,但是我們有 Sublime Text,下載地址:http://www.sublimetext.com/3
Package Control Plugin 是什么?它在 Sublime Text 中的作用,可以理解為終端在 Mac OS 中的作用一樣,比如下面我們啟動或編譯 ASP.NET vNext 項目,就是通過 Package Control Plugin 命令,了解更多內(nèi)容。
兩種安裝方式,具體可參照官方說明:https://sublime.wbond.net/installation
命令安裝:
import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.PRoxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
如果命令安裝方式不成功,請嘗試手動安裝(我當時好像就是這種方式安裝的):
Sublime Kulture 是什么?其實我也不是很清楚,你可以把它看作是 Sublime Text 3 支持 ASP.NET vNext 的一種插件,github 官方地址:https://github.com/ligershark/kulture/
命令安裝:
Package Control: Install Package
。Kulture
,然后進行安裝。手動安裝:
cd file:///Users/{username}/Library/application Support/Sublime Text 3/Packages/
git clone https://github.com/ligershark/Kulture.git
,將 Kulture 克隆到 Packages 文件夾下。做完以上操作,我們基本上就可以使用 Sublime Text 3 開發(fā) ASP.NET vNext 應用程序了,我們使用 GitHub 上一個開源示例作為演示,地址:https://github.com/shirhatti/Home.git
在 Mac OS 中隨便找個目錄,在終端中輸入命令:git clone https://github.com/shirhatti/Home.git
打開 Home > Samples 目錄,我們會發(fā)現(xiàn)里面有三個項目文件夾:ConsoleApp,HelloMvc 和 HelloWeb,這邊我們使用 HelloMvc(ASP.NET MVC),作為演示項目。
操作步驟:
Sublime Text 3 視圖:
演示項目 HelloMvc,是我們從 github 上克隆下來的源代碼,但是項目依賴的程序包,需要我們手動恢復,恢復 NuGet 程序包步驟:
Run K Commands
命令并回車。kpm restore
命令并回車。編譯命令:Cmd + B 或 F7,使用 Shft + F4 定位錯誤。
啟動并運行 HelloMvc:
Run K Commands
命令并回車。k kestrel
命令并回車。啟動成功:
我們可以在 peoject.json 中指定 host 地址,比如:"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5000"
瀏覽器輸入:http://localhost:5000/
其實以上操作,我們只是根據(jù)現(xiàn)有項目編譯并運行,那如何構(gòu)建一個新的 ASP.NET vNext 應用程序呢?就像我們使用 Visual Studio New Project 一樣,答案是 generator-aspnet。
在安裝 generator-aspnet 之前,必須先安裝 node.js(This requires you to have node.js and npm already installed)。
官方安裝命令:npm install -g generator-aspnet
,但是我安裝的時候不知道怎么回事報錯,具體什么原因我現(xiàn)在也記不得了,大概的解決方式是在命令之前加“sudo”,參考資料:latest angular generator throwing out so many errors on my macbook pro。
安裝命令(測試可行):
sudo npm install -g yo
sudo npm install -g generator-aspnet
使用命令:yo aspnet
,詳細演示:
補充:通過OmniSharp,Sublime寫C#代碼也能智能感知啦(包括Vim, Emacs, Atom, Brackets) http://www.omnisharp.net/
讓 ASP.NET vN
新聞熱點
疑難解答