vs2017的 .net core 在Ubuntu16.04上的风雨历程

2017年3月7日,vs2017正式发布,里面的。net core为v1.1.1版本。跨平台,为了实现这个伟大的目标,在漫长的过程中,狼狈的被坑了又坑。。。终于,哈哈,成功了。

共享一下,那些坑吧。

1. vmware 12.5

开始,用的vmware11,安装的是Ubuntu14.04。

第一个坑:Ubuntu我装的是32位的。。。。同志们啊,.net core只能装在64位上的。 开始不知道,就用http://www.microsoft.com/net/core#linuxubuntu上的教法,一遍遍的装啊装,一边还骂Linux下载慢。后来急了,想弄个vpn。。。就是装不上,后来啊。。。开窍了,发现32位Linux是装不上的。

注意,Ubuntu一定要装64位的,建议用16.04(不知道多少位的?  sudo uname --m  一下,如果返回i686,恭喜你,是32位的,和我一样需要重装。

第二个坑:vmware中的Ubuntu16.04不能共享文件夹。

下个vmware12.5吧,哦,其它版本也能共享? 呵呵,请看下一个坑。如果和我一样坑坑了,就这样办:

1)vmware12.5启动后,再启动Ubuntu16.04虚拟机。

2)vmware的右下方有两个光驱图标,单击右侧那个,选择加载vmware安装路径下的linux.iso,注意,是vmware在win7下的安装路径哦(呵呵,我用的是win7,win10也一样吧)

3)在Ubuntu里面打开光盘,会发现里面有个vmware-tools的压缩包,双击,解压到home目录下(这个目录有操作权限哦),找到里面一个vmware-install.pl的文件,终端里面运行一下,OK了。 vmware11的版本,也这么试过,是无法共享的。里面的linux.iso在Ubuntu16.04下,感觉不完整。。。。是我的人品??  悲催了,我的鹅。

4)vmware的虚拟机中,右击ubuntu16.04,会找到共享文件夹功能,设一下,ok了。

第三个坑:VS2017下建一个net core控制台程序,生成的是一个dll?

哎呀,这个坑怎么让俺想到母鸡生出鸭子呢?话说,俺刚看到的时候,傻了,一下了颠覆了俺十多年的开发观。那么,vs2017里面,可以F5运行,没有Vs2017可怎么办?

嘿嘿,俺把dll后缀改成exe了。。。。x x x,双击运行后,天打五雷轰,那堆异常叫壮个观。不行的拉。 后来找了MS说明书,人家说,net core吧,是个跨平台的东东,这个是上档次的,不像以前的猫啊狗的,双击就行,现在要有骑士风度,要用终端,win7下要这么用:运行-> cmd    dotnet d:\mydir\myfile.dll 回车。

第四个坑:Ubuntu16.04 怎么装net core?

这个。。。linux下,下载个东东,费老劲了,又是老外的网址,又是大家伙,动不动上百M。。。俺就想,照ms的教程(http://www.microsoft.com/net/core#linuxubuntu),sudo apt-get update 要猴年马月。。。呵呵,这个地址里面有个好东东,里面有个连接,all Linux downloads

可以先用浏览器下下来,再手工安装一下,多好啊。 呵呵,我就这么干了,在ubuntu里面,下了一个sdk,然后,解压到home目录下,然后。。。找到一篇手工安装core的文章,按他的说法,先在/usr/share下建一个目录:dotnet,再把解压的所有文件拷贝到 /usr/share/dotnet目录下,然后 ln -i /usr/share/dotnet/dotnet /usr/bin

就是在/usr/bin下建一个连接,就ok了。 测试一下,在终端下,输入:dotnet run 回车,显示:welcome 。net core! 呵呵,美啊。 然后。。。。然后,输入:

dotnet /mnt/hgfs/mydir/myfile.dll   轰隆隆。。。。雷来了,一堆的err,什么没有 system namespace。。。那么多的错误,看到让你怀疑是不是俺的代码写错啦?

错了,手工安装net core sdk 装的有问题。  错在哪? 对不起,俺没深入研究,费功夫啊。 怎么办? ms的教程,还是要老老实实的搞啊。

1)步:sudo sh -c ‘echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list‘

2)步:sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893

3)步:sudo apt-get update

update 很慢,很慢,没关系,即使你关了vmware,下次进入ubuntu,还可以直接调用 sudo apt-get update.

坑来了:update失败了。 咳嗽一声,喂,喂,同志们注意了啊,这个,关于Update失败的事吧哈,我知道有两种情况哈,这个网络不通是不算的哈。哎,这个谁扔的鸡蛋,这么不珍惜粮食。。。。 一种是,你的Unbuntu是32位的,上面提到了,重装个64位的再试。 一种是,浏览器能访问update失败中的网址,那么,update为什么会失败呢?

没道理啊。因为,你有防火墙。浏览器的端口是正常通行的,sudo apt-get update 用的是哪个端口? 没研究,肯定不是80,呵呵,win7下把操作系统的防火墙关闭掉,OK了。

4)步:sudo apt-get install dotnet-dev-1.0.1

这个,你要有足够。。足够。。。的耐心,可以反复的装,在你崩溃前,恭喜你,成功了。

敲入:

dotnet run 测试一把。

dotnet /mnt/hgfs/mydir/myfile.dll    哈哈。。。。你成功了。

时间: 2024-10-11 13:06:31

vs2017的 .net core 在Ubuntu16.04上的风雨历程的相关文章

在ubuntu16.04上安装有道词典

参考来源:http://www.cnblogs.com/scplee/archive/2016/05/13/5489024.html 在ubuntu16.04上安装有道词典主要是解决依赖问题,我们在配置文件中把依赖文件删除,就行了 第一步:下载有道词典的.deb包 第二步:创建youdao文件,然后把有道的源文件解压到这个包里 sudo dpkg -X sudo dpkg -X ./youdao-dict_1.1.0-0-ubuntu_amd64.deb youdao 第二步:解压deb包中的c

Docker在Ubuntu16.04上安装和部署Apache Storm

Docker在Ubuntu16.04上安装和部署Apache Storm 1.添加Docker源 sudo apt-get update 2.增加CA证书 sudo apt-get install apt-transport-https ca-certificates 3.添加GPG Key(一种加密手段) sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897

在ubuntu16.04上安装eclipse

 在ubuntu16.04上安装eclipse 一.下载     首先我们需要安装jdk1.8及其以上,然后从官网:https://www.eclipse.org/downloads/上下载,需要注意的是官网的服务器太差,响应的速度非常慢,需要读者有点耐心,哈哈~~~然后选择第一个,就是我们要安装的eclipse的JDE了.    点击下载按钮,将会下载相应的位数和版本的eclipse:     到了这一步,我们要点击"click here"来下载,下载的时候也不提示,我们需要看一下浏

Ubuntu16.04上使用git

各系统git的使用除了安装方式不同,基本都一样,本文记录的是Ubuntu16.04上使用git 首先要区分git和github的区别: Git是分布式版本控制系统,也指基于命令行的版本管理工具github是个网站,用于远程托管你的项目,相当于云盘 在使用git前先去github注册一个自己的账户,邮箱,用户名,密码在以后都会使用到,不要乱填,也不要忘记. 面对纯英文的网站,可能你会感觉很懵,暂且不用管,我们常用的功能并不多,等你熟悉以后就会觉得so easy 注册完之后根据这个教程学习:http

Ubuntu16.04上使用Nginx部署Laravel应用程序

Laravel 是一个非常流行的PHP框架,以编码风格优雅著称,每行代码都非常简洁,富有表达力,并且拥有强大的组件开发生态,号称为web艺术家创造的PHP框架.我最近的个人项目尝试了下Laravel框架,部署的的时候遇到了一些坑,这里记录下. 我用的服务器是DigitalOcean的Ubuntu 16.04 LTS,其他公司的服务器应该也大同小异,有一些公司甚至简化了安装流程,几乎不用改动配置文件就可以让自己的程序跑起来(比如阿里云 安装依赖 更新apt-get 1 sudo apt-get u

在Ubuntu16.04上使用Autofs

在Solaris上,autofs是默认安装的,可以通过/net/<NFS server>很方便地访问远程的共享目录.但在Linux上(例如Fedora或者Ubuntu),使用autofs则需要自己安装和配置.本文将以Ubuntu16.04作为NFS client, 简单介绍一下如何使用autofs. NFS server: Fedora 27 (IPv4 10.66.12.119) NFS client: Ubuntu 16.04 (IPv4 10.66.13.219) P.S. NFS se

Caffe初学者第二部:Ubuntu16.04上安装caffe(CPU)+Matlab2014a+Opencv3的详细过程 (亲测成功, 20180529更新)

这是caffe初学者系列教程的第二部,旨在帮助更多对深度学习感兴趣的同学们!第一部可以参考以下地址: Caffe初学者第一部:Ubuntu14.04上安装caffe(CPU)+Python的详细过程 (亲测成功, 20180524更新) 好啦,开始我们的教程吧! 前言: 之前的第一部教程发布以后,很受欢迎,看样子我的努力没白费,毕竟写博文花了我好几个小时,感谢同学们的支持啦^_^ 亲测教程: 本教程需要准备的文件有:Ubuntu16.04, Opencv3(必要), Matlab2014a. (

在Ubuntu16.04上安装Anaconda

之前写过一个在mac上安装的教程,这次在ubuntu上安装一次,记录一下 安装过程 从官网下载,这里选择的是python 3.7版本 当时用ubuntu里面firefox浏览器自带的下载器下载了5个小时结果失败了,后来用自己的下载器,不到半小时就下载好了...要是有同样问题的可以注意一下 下载下来以后,使用bash filename执行安装命令.其中filename指的是下载下来的文件的名字,我的是Anaconda3-2019.10-Linux-x86_64.sh 然后,一路回车键 这个过程中,

在Ubuntu16.04上部署LXC容器管理系统的相关步骤

打算安装一个LXC linux容器管理的软件来分配使用资源并配置不同的编程环境,这样就方便大家的使用,步骤如下(宿主机的环境都搭建好了,对应显卡的驱动等): 参考网站: 简单入门和相关指令总结:https://www.ibm.com/developerworks/cn/linux/1312_caojh_linuxlxc/index.html Linux 容器的资源管理方法:https://www.ibm.com/developerworks/cn/linux/1404_caojh_lxc/ 其他