• [2014-08-18]初尝 AspNet vNext On Mac



    网上关于AspNet vNext的介绍已经非常多,本文不再赘述,仅记录下Mac环境的几点注意事项。

    环境

    • OSX 10.9.4
    • Mono 3.6.1
    • Kvm 1.0.0-alpha4-10285

    mono官网提供了mac使用的安装包,安装比较顺利,不详细说了。
    这里比较麻烦的就是kvm,kvm的安装文件获取需要访问亚马逊的服务,网速不给力。
    用HomeBrew安装的时候,为了下载这个包,命令重试了二十多次。
    不过文件支持断点续传,所以需要多一些耐心。

    尝试Console程序

    这里直接获取github上Aspnet/Home 版本库以尝试运行。

    git clone git://github.com/aspnet/Home.git
    

    然后直接进入Home下的samples/ConsoleApp,运行kpm获取依赖的库:

    kpm restore
    

    完成后,用k run运行,命令行会输出:

    [wbc@mbp:ConsoleApp]$k run
    Hello World
    [wbc@mbp:ConsoleApp]$
    

    到此为止,你已经成功在mac系统上以vnext的方式成功运行了.net程序。
    程序文件名并不强制要求为Program.cs只要代码中有main方法就行。

    但ConsoleApp目录下并没有依赖的库,那么库在哪?

    找找看

    [wbc@mbp:ConsoleApp]$cd
    [wbc@mbp:~]$ls -al
    

    发现~目录下出现了.kvm/.kpm/两个目录

    [wbc@mbp:~]$cd .k    //按两下Tab
    .kpm/ .kre/ 
    [wbc@mbp:~]$cd .kpm/
    [wbc@mbp:.kpm]$ls
    packages
    [wbc@mbp:.kpm]$ls -p packages/
    System.Console/		//Hello World依赖的库
    

    .kpm下有所有restore下载的库,而.kvm目录下其实是多个KVM环境,不多说了。

    尝试运行HelloWeb

    可能看多了各种AspNet vNext的尝试文章,会看花了眼,老想着用k web命令运行web程序。其实目前在mac系统下,还不支持self-host。所以我们要使用一个server。
    先回到samples目录下,进入HelloWeb,kpm restore后:

    [wbc@mbp:HelloWeb]$k kestrel
    Started
    

    这时就可以访问localhost:5004了,出现一个welcome页面。
    k 后面跟随的参数应该是和project.json中配置的commands节一致。
    然后如何停止kestrel?使用常用的CTRL+C并不能中止kestrel,也尝试了CTRL+D,也不行。最后发现CTRL+Z可以,但也不完全,再次运行k kestrel的时候会提示地址已占用。所以,最终还是要去用ps命令找到进程号,用kill -9 [pid] 解决。

    尝试HelloMvc

    restore有点问题,尝试失败。可能是示例程序依赖的库,在mac下还没有准备好,不仔细排查了,等正式版。

    总结

    虽然目前正式版还没出来,各项目还有不完善的地方,但前途还是光明的。
    如果vNext正式版发布后,能出现一个类似ROR中的rails脚手架等功能,那肯定能在非windows社区中获得更大的人气。
    将.Net从VS中解放出来,会更有生命力。

    参考:

  • 相关阅读:
    linux系统swap分区容量扩展
    linux系统lv_root分区容量扩展
    linux系统创建新LV,挂载新分区。
    linux 服务器重启后lvm 变成inactive状态解决
    Linux下使用fdisk扩大分区容量
    go语言 调用飞书群消息机器人接口
    SpringCloud Sentinel 学习笔记
    Git 笔记整理
    SpringBoot 整合 RabbitMQ 学习笔记
    js递归生成树形结构-vue
  • 原文地址:https://www.cnblogs.com/personball/p/7455849.html
Copyright © 2020-2023  润新知