1-structedStreaming-基本流程(2.2.1)
github_28583061
javaspark大数据hadoophive
基本流程spark2.2.1StructuredNetworkWordCount统计来自socket的wordcount创建stream,指定数据源DataStreamReader--从外部存储加载流数据的接口lines=spark.readStream.format("socket").option("host",host).option("port",port).load()加载数据流为Dat
RK356X/RK3588构建Ubuntu20.04根文件系统
那肯定是很多年以后!
全志&瑞芯微开发实战linux
文章目录前言一、官网下载ubuntu-base二、挂载并构建文件系统2.1、配置构建文件系统环境2.2、编写挂载脚本mount.sh并安装相关工具2.3、轻量级的桌面环境lubuntu-desktop2.4、卸载一些不必要的软件2.5、添加用户2.6、允许root用户登录桌面2.7、串口自动登录2.8、开机卡“AstartjobisrunningforwaitfornetworktobeConfi
基于车辆组网通信系统的MATLAB仿真
HackDashX
matlab人工智能开发语言Matlab
基于车辆组网通信系统的MATLAB仿真车辆组网通信系统在现代交通中起着重要的作用,它利用车辆自身的通信能力和网络技术实现车辆之间的信息交流和协作。本文将介绍如何使用MATLAB进行车辆组网通信系统的仿真,并提供相应的源代码。首先,我们需要明确车辆组网通信系统的基本原理。该系统基于车载自组织网络(VehicularAdHocNetwork,VANET),利用无线通信技术和车辆间的直接通信来实现信息传
cgroup 简介
小黑屋关门了
LXC-容器cgroup
cgroup的功能在于将一台计算机上的资源(CPU,memory,network)进行分片,来防止进程间不利的资源抢占。术语cgroup:关联一组task和一组subsystem的配置参数。一个task对应一个进程,cgroup是资源分片的最小单位。subsystem:资源管理器,一个subsystem对应一项资源的管理,如cpu,cpuset,memroy等。hirearchy:关联一个到多个s
云计算中网络虚拟化的核心组件——NFV、NFVO、VIM与VNF
嫣然细雨红尘路
网络服务云计算云服务云计算网络
NFVNFV(NetworkFunctionsVirtualization,网络功能虚拟化),是一种将传统电信网络中的网络节点设备功能从专用硬件中解耦并转换为软件实体的技术。通过运用虚拟化技术,NFV允许网络功能如路由器、防火墙、负载均衡器、交换机、网关等在标准的商用硬件(如x86服务器、存储和交换设备)上以软件的形式运行,而不是依赖于专用的、固定功能的硬件设备。NFV的核心价值在于:降低成本:通
nginx负载均衡
柠檬树723
nginx负载均衡运维
一、负载均衡负载均衡是将负载分摊到不同的服务单元,既保证服务的可用性,又保证响应足够快,给用户很好的体验。二、负载均衡原理负载均衡NAT(NetworkAddressTranslation网络地址转换)简单地说就是将一个IP地址转换为另一个IP地址,一般用于未经注册的内部地址与合法的、已获注册的InternetIP地址间进行转换。适用于解决InternetIP地址紧张、不想让网络外部知道内部网络结
GSEA - Gene set enrichment analysis 基因集富集 | ORA - Over-Representation Analysis 分析原理与应用...
weixin_30294709
python数据库人工智能
R批量做GSEA分析还没有官方的包,但是clusterprofiler可以做,它调用了最新的gfsea包。GeneSetTestingforRNA-seq-fgsea教程RNA-seq是利器,大部分做实验的老板手下都有大量转录组数据,所以RNA-seq的分析需求应该是很大的(大部分的生信从业人员应该都差不多要沾边吧)。普通的转录组套路并不多,差异表达基因、富集分析、WGCNAnetwork以及一些
使用onnxruntime-web 运行yolov8-nano推理
CHEN_RUI_2200
机器学习YOLO
ONNX(OpenNeuralNetworkExchange)模型具有以下两个特点促成了我们可以使用onnxruntime-web直接在web端上运行推理模型,为了让这个推理更直观,我选择了试验下yolov8识别预览图片:1.跨平台兼容性ONNX是一种开放的格式,可以在不同的深度学习框架之间共享模型,如PyTorch、TensorFlow、MXNet和Caffe2。这使得用户可以在一个框架中训练模
随笔十七、eth0单网卡绑定双ip的问题
单片机社区
立创泰山派随笔智能路由器网络协议udp嵌入式硬件网络
在调试语音对讲过程中遇到过一个“奇怪”问题:泰山派作为一端,可以收到对方发来的语音,而对方不能收到泰山派发出的语音。用wireshark抓包UDP发现,泰山派发送的地址是192.168.1.30,而给泰山派实际设置的静态地址是192.168.1.99。由于接收端有地址识别,只接收99,因此30的数据应该是被丢弃了,导致不能播放音频。vi/etc/network/interfacesautoloif
深度神经网络(DNN)详解
古龙飞扬
dnn人工智能神经网络
深度神经网络(DNN,DeepNeuralNetwork)是人工智能领域中的一种重要模型,它通过模拟人脑神经网络的结构和工作原理,实现了对复杂数据的处理和决策。以下是对深度神经网络(DNN)的超详细解析:一、DNN的基本概念DNN是一种具有多个隐藏层的神经网络模型,其核心在于其深度,即包含多个隐藏层。这些隐藏层通过非线性变换,使得模型能够捕捉到数据中的复杂关系和模式。DNN通常由输入层、隐藏层和输
#深度学习:从基础到实践
single_ffish
深度学习gpt神经网络生成对抗网络1024程序员节
深度学习是人工智能领域近年来最为火热的技术之一。它通过构建由多个隐藏层组成的神经网络模型,能够从海量数据中自动学习特征和表征,在图像识别、自然语言处理、语音识别等领域取得了突破性进展。本文将全面介绍深度学习的基础知识、主要算法和实践应用,帮助您快速掌握这一前沿技术。1.深度学习的基础1.1人工神经网络深度学习是基于人工神经网络(ArtificialNeuralNetwork,ANN)的一种机器学习
【计算机网络】NAT应用
酱学编程
计算机网络计算机网络网络智能路由器
NAT(NetworkAddressTranslation)的定义:NAT(NetworkAddressTranslation)的定义:NAT是一种网络技术,用于在IP数据包通过路由器或防火墙时修改其源IP地址或目的IP地址。主要目的是解决IP地址短缺问题,同时也能为网络提供一定程度的安全保护。NAT的主要功能和作用:地址转换源地址转换****(SNAT):iptables-tnat-APOSTR
Python 一个脚本批量安装第三方库
漫漫进阶路
PythonPycharmpython
importos#引入os库,os是python自带的库definstall_packages():#将要批量安装的第三方库写进一个列表libs=["numpy","matplotlib","pillow","sklearn","scipy","requests","uvicorn","pyspider","beautifulsoup4","wheel","networkx","sympy","p
Java学习day002 Java程序设计环境(下载安装JDK、使用命令行工具、使用集成开发环境、运行图形化应用程序)
Z zehao
Java基础学习java后端
使用的教材是java核心技术卷1,我将跟着这本书的章节同时配合视频资源来进行学习基础java知识。day002Java程序设计环境(下载安装JDK、使用命令行工具、使用集成开发环境、运行图形化应用程序)第一部分安装java开发工具包下载JDK要想下载Java开发工具包,可以访问Oracle网站:www.oracle.com/technetwork/java/javase/downloads,在得到
tcp/ip协议中ip层协议,tcp/ip协议中ip协议属于
zzyh123456
tcp/ip网络网络协议
在TCP/IP协议栈中,IP(InternetProtocol)协议属于网络层(NetworkLayer)。TCP/IP协议栈是一个四层架构,从上到下依次为:应用层(ApplicationLayer):这一层提供了应用程序间通信的接口,如HTTP、FTP、SMTP等协议都在这一层。传输层(TransportLayer):这一层负责应用程序之间的数据传输,包括面向连接的TCP(Transmissio
如何使用 Linux 构建自己的 NAS 系统?
wljslmz
Linux技术linux运维服务器NAS
构建一个网络附加存储(NetworkAttachedStorage,NAS)系统是一个非常有用的项目,尤其是对于家庭和小型办公室用户来说。通过使用Linux构建自己的NAS系统,你可以享受到灵活性、安全性和定制化的优势。本文将详细介绍如何使用Linux构建自己的NAS系统,从硬件选择、系统安装、软件配置到日常维护。硬件选择要构建一个NAS系统,你需要以下硬件:主机(服务器):这可以是一台专用的服务
JAVA 安装教程
连云港大帅哥
java基础javajdk安装配置环境变量
下载官网地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,选择1.8版本jdk进行下载安装JDK直接运行exe可执行程序,默认安装即可;备注:路径可以自己定义,不建议路径包含中文名、特殊符号、空格。配置环境变量1)新建变量名:JAVA_HOME,变量值:D:\Java8(JDK安装路径);2)打开PATH,添
kubernetes 查询容器的 network namespace
安心Smile
云计算kubernetesdockernamespace
简介命名空间是容器使用的主要方面之一(请参见下图)。它们提供了一种隔离形式,允许容器保持可移植性并与主机系统分离。尽管Linux内核提供了各种类型的名称空间,在本文中,我们将研究如何查看Kubernetes集群中容器的networknamespace,这对于故障排除和学习非常有用。普通方式查询一般情况下,可以通过ipnetndlist命令查看主机的networknamespace,但是,在kube
k8s支持自定义field-selector spec.hostNetwork过滤
安心Smile
云计算dockerlinux运维服务器k8sfield-selector
好久没写博客啦,年前写一个博客就算混过去啦写一个小功能,对于Pod,在没有label的情况下,支持--field-selectorspec.hostNetwork查询Pod是否为hostNetwork类型,只为了熟悉APIServer是如何构建索引向Etcd查询过程。Kubernetes版本1.17.4的,需要重新编译APIServer。不要怪太老了,高版本代码这块儿没怎么变过,下载代码:gitc
图像处理篇---图像压缩格式&编码格式
Ronin-Lotus
图像处理篇图像处理计算机视觉人工智能学习程序人生图像压缩编码格式
文章目录前言图像压缩格式无损压缩(LosslessCompression)1.PNG(PortableNetworkGraphics)2.GIF(GraphicsInterchangeFormat)3.BMP(Bitmap)4.TIFF(TaggedImageFileFormat)有损压缩(LossyCompression)1.JPEG(JointPhotographicExpertsGroup)
Linux设置静态IP
Leo-Ma
ubuntu
Linux设置静态IPUbuntuRedHat/OpenEulerUbuntu//配置静态IP文件/etc/network/interfacesvim/etc/network/interfaces修改完成后,执行以下命令即可生效://重启网卡使配置生效$servicenetworkrestartRedHat/OpenEuler//修改网卡eth0的配置文件则打开ifcfg-eth0文件$vim/e
第八章:AI大模型的未来发展趋势8.3 新兴应用领域8.3.2 生成对抗网络的应用
AI天才研究院
AI大模型企业级应用开发实战大数据人工智能语言模型AILLMJavaPython架构设计AgentRPA
1.背景介绍1.背景介绍生成对抗网络(GenerativeAdversarialNetworks,GANs)是一种深度学习技术,由伊玛·古德姆(IanGoodfellow)于2014年提出。GANs由两个相互对抗的神经网络组成:生成器(Generator)和判别器(Discriminator)。生成器生成假数据,判别器试图区分假数据和真实数据。这种对抗训练方法使得GANs能够学习数据分布并生成高质
构建局域网
sbiigu1
计算机相关网络应用网络协议数据结构应用服务器DOS
转自:[url]http://www.zhirui.com/it/2004/8-3/1185-2.html[/url]随着社会的不断进步,资源共享已经成为信息交流的一种重要方式,小到几个人的联网对战,大到覆盖全球的Internet,网络让许多人拉近了距离。而在学校、网吧和小型办公室首先接触的就是局域网。局域网基本知识1.基本概念局域网LAN(LocalAreaNetwork):通常指的都是规模不大
Windows系统启动MongoDB报错无法连接服务器
佚名猫
数据库windowsmongodb服务器
文章目录发现问题解决办法发现问题1)、先是发现执行mongo命令,启动报错:error:MongoNetworkError:connectECONNREFUSED127.0.0.1:27017;2)、再检查MongoDB进程tasklist|findstrmongo发现没有进程;3)、然后执行启动MongoDB服务命令netstartMongoDB报错服务名无效4)、便win+R输入service
PTN与IP RAN
l15778036171
网络服务器运维
PTN(PacketTransportNetwork)与IPRAN(IPRadioAccessNetwork)都是现代通信网络中重要的传输技术,它们各自具有独特的特点和优势,在不同的应用场景中发挥着重要作用。以下是对PTN与IPRAN的详细解析:一、PTN技术解析PTN,即分组传送技术,是一种基于数据包的网络传输技术。它通过将传统的SDH/SONET网络分离为数据层和控制层,并在数据层采用数据包交
Cloudflare CDN(泛播)支持转发的网络端口
liulilittle
IP运维
详细文献:Networkports·CloudflareFundamentalsdocsHTTP透明端口转发80808088802052208220862095HTTPS隧道端口转发44320532083208720968443HTTP/HTTPS端口隧道转发,但以下端口禁用CDN缓存2052205320822083208620872095209688808443
Java开发中,spring mvc 的线程怎么调用?
小麦麦子
springmvc
今天逛知乎,看到最近很多人都在问spring mvc 的线程http://www.maiziedu.com/course/java/ 的启动问题,觉得挺有意思的,那哥们儿问的也听仔细,下面的回答也很详尽,分享出来,希望遇对遇到类似问题的Java开发程序猿有所帮助。
问题:
在用spring mvc架构的网站上,设一线程在虚拟机启动时运行,线程里有一全局
maven依赖范围
bitcarter
maven
1.test 测试的时候才会依赖,编译和打包不依赖,如junit不被打包
2.compile 只有编译和打包时才会依赖
3.provided 编译和测试的时候依赖,打包不依赖,如:tomcat的一些公用jar包
4.runtime 运行时依赖,编译不依赖
5.默认compile
依赖范围compile是支持传递的,test不支持传递
1.传递的意思是项目A,引用
Jaxb org.xml.sax.saxparseexception : premature end of file
darrenzhu
xmlprematureJAXB
如果在使用JAXB把xml文件unmarshal成vo(XSD自动生成的vo)时碰到如下错误:
org.xml.sax.saxparseexception : premature end of file
很有可能时你直接读取文件为inputstream,然后将inputstream作为构建unmarshal需要的source参数。InputSource inputSource = new In
CSS Specificity
周凡杨
html权重Specificitycss
有时候对于页面元素设置了样式,可为什么页面的显示没有匹配上呢? because specificity
CSS 的选择符是有权重的,当不同的选择符的样式设置有冲突时,浏览器会采用权重高的选择符设置的样式。
规则:
HTML标签的权重是1
Class 的权重是10
Id 的权重是100
java与servlet
g21121
servlet
servlet 搞java web开发的人一定不会陌生,而且大家还会时常用到它。
下面是java官方网站上对servlet的介绍: java官网对于servlet的解释 写道
Java Servlet Technology Overview Servlets are the Java platform technology of choice for extending and enha
eclipse中安装maven插件
510888780
eclipsemaven
1.首先去官网下载 Maven:
http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.2.3-bin.tar.gz
下载完成之后将其解压,
我将解压后的文件夹:apache-maven-3.2.3,
并将它放在 D:\tools目录下,
即 maven 最终的路径是:D:\tools\apache-mave
jpa@OneToOne关联关系
布衣凌宇
jpa
Nruser里的pruserid关联到Pruser的主键id,实现对一个表的增删改,另一个表的数据随之增删改。
Nruser实体类
//*****************************************************************
@Entity
@Table(name="nruser")
@DynamicInsert @Dynam
我的spring学习笔记11-Spring中关于声明式事务的配置
aijuans
spring事务配置
这两天学到事务管理这一块,结合到之前的terasoluna框架,觉得书本上讲的还是简单阿。我就把我从书本上学到的再结合实际的项目以及网上看到的一些内容,对声明式事务管理做个整理吧。我看得Spring in Action第二版中只提到了用TransactionProxyFactoryBean和<tx:advice/>,定义注释驱动这三种,我承认后两种的内容很好,很强大。但是实际的项目当中
java 动态代理简单实现
antlove
javahandlerproxydynamicservice
dynamicproxy.service.HelloService
package dynamicproxy.service;
public interface HelloService {
public void sayHello();
}
dynamicproxy.service.impl.HelloServiceImpl
package dynamicp
JDBC连接数据库
百合不是茶
JDBC编程JAVA操作oracle数据库
如果我们要想连接oracle公司的数据库,就要首先下载oralce公司的驱动程序,将这个驱动程序的jar包导入到我们工程中;
JDBC链接数据库的代码和固定写法;
1,加载oracle数据库的驱动;
&nb
单例模式中的多线程分析
bijian1013
javathread多线程java多线程
谈到单例模式,我们立马会想到饿汉式和懒汉式加载,所谓饿汉式就是在创建类时就创建好了实例,懒汉式在获取实例时才去创建实例,即延迟加载。
饿汉式:
package com.bijian.study;
public class Singleton {
private Singleton() {
}
// 注意这是private 只供内部调用
private static
javascript读取和修改原型特别需要注意原型的读写不具有对等性
bijian1013
JavaScriptprototype
对于从原型对象继承而来的成员,其读和写具有内在的不对等性。比如有一个对象A,假设它的原型对象是B,B的原型对象是null。如果我们需要读取A对象的name属性值,那么JS会优先在A中查找,如果找到了name属性那么就返回;如果A中没有name属性,那么就到原型B中查找name,如果找到了就返回;如果原型B中也没有
【持久化框架MyBatis3六】MyBatis3集成第三方DataSource
bit1129
dataSource
MyBatis内置了数据源的支持,如:
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<data
我程序中用到的urldecode和base64decode,MD5
bitcarter
cMD5base64decodeurldecode
这里是base64decode和urldecode,Md5在附件中。因为我是在后台所以需要解码:
string Base64Decode(const char* Data,int DataByte,int& OutByte)
{
//解码表
const char DecodeTable[] =
{
0, 0, 0, 0, 0, 0
腾讯资深运维专家周小军:QQ与微信架构的惊天秘密
ronin47
社交领域一直是互联网创业的大热门,从PC到移动端,从OICQ、MSN到QQ。到了移动互联网时代,社交领域应用开始彻底爆发,直奔黄金期。腾讯在过去几年里,社交平台更是火到爆,QQ和微信坐拥几亿的粉丝,QQ空间和朋友圈各种刷屏,写心得,晒照片,秀视频,那么谁来为企鹅保驾护航呢?支撑QQ和微信海量数据背后的架构又有哪些惊天内幕呢?本期大讲堂的内容来自今年2月份ChinaUnix对腾讯社交网络运营服务中心
java-69-旋转数组的最小元素。把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个排好序的数组的一个旋转,输出旋转数组的最小元素
bylijinnan
java
public class MinOfShiftedArray {
/**
* Q69 旋转数组的最小元素
* 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个排好序的数组的一个旋转,输出旋转数组的最小元素。
* 例如数组{3, 4, 5, 1, 2}为{1, 2, 3, 4, 5}的一个旋转,该数组的最小值为1。
*/
publ
看博客,应该是有方向的
Cb123456
反省看博客
看博客,应该是有方向的:
我现在就复习以前的,在补补以前不会的,现在还不会的,同时完善完善项目,也看看别人的博客.
我刚突然想到的:
1.应该看计算机组成原理,数据结构,一些算法,还有关于android,java的。
2.对于我,也快大四了,看一些职业规划的,以及一些学习的经验,看看别人的工作总结的.
为什么要写
[开源与商业]做开源项目的人生活上一定要朴素,尽量减少对官方和商业体系的依赖
comsci
开源项目
为什么这样说呢? 因为科学和技术的发展有时候需要一个平缓和长期的积累过程,但是行政和商业体系本身充满各种不稳定性和不确定性,如果你希望长期从事某个科研项目,但是却又必须依赖于某种行政和商业体系,那其中的过程必定充满各种风险。。。
所以,为避免这种不确定性风险,我
一个 sql优化 ([精华] 一个查询优化的分析调整全过程!很值得一看 )
cwqcwqmax9
sql
见 http://www.itpub.net/forum.php?mod=viewthread&tid=239011
Web翻页优化实例
提交时间: 2004-6-18 15:37:49 回复 发消息
环境:
Linux ve
Hibernat and Ibatis
dashuaifu
Hibernateibatis
Hibernate VS iBATIS 简介 Hibernate 是当前最流行的O/R mapping框架,当前版本是3.05。它出身于sf.net,现在已经成为Jboss的一部分了 iBATIS 是另外一种优秀的O/R mapping框架,当前版本是2.0。目前属于apache的一个子项目了。 相对Hibernate“O/R”而言,iBATIS 是一种“Sql Mappi
备份MYSQL脚本
dcj3sjt126com
mysql
#!/bin/sh
# this shell to backup mysql
#
[email protected] (QQ:1413161683 DuChengJiu)
_dbDir=/var/lib/mysql/
_today=`date +%w`
_bakDir=/usr/backup/$_today
[ ! -d $_bakDir ] && mkdir -p
iOS第三方开源库的吐槽和备忘
dcj3sjt126com
ios
转自
ibireme的博客 做iOS开发总会接触到一些第三方库,这里整理一下,做一些吐槽。 目前比较活跃的社区仍旧是Github,除此以外也有一些不错的库散落在Google Code、SourceForge等地方。由于Github社区太过主流,这里主要介绍一下Github里面流行的iOS库。 首先整理了一份
Github上排名靠
html wlwmanifest.xml
eoems
htmlxml
所谓优化wp_head()就是把从wp_head中移除不需要元素,同时也可以加快速度。
步骤:
加入到function.php
remove_action('wp_head', 'wp_generator');
//wp-generator移除wordpress的版本号,本身blog的版本号没什么意义,但是如果让恶意玩家看到,可能会用官网公布的漏洞攻击blog
remov
浅谈Java定时器发展
hacksin
java并发timer定时器
java在jdk1.3中推出了定时器类Timer,而后在jdk1.5后由Dou Lea从新开发出了支持多线程的ScheduleThreadPoolExecutor,从后者的表现来看,可以考虑完全替代Timer了。
Timer与ScheduleThreadPoolExecutor对比:
1.
Timer始于jdk1.3,其原理是利用一个TimerTask数组当作队列
移动端页面侧边导航滑入效果
ini
jqueryWebhtml5cssjavascirpt
效果体验:http://hovertree.com/texiao/mobile/2.htm可以使用移动设备浏览器查看效果。效果使用到jquery-2.1.4.min.js,该版本的jQuery库是用于支持HTML5的浏览器上,不再兼容IE8以前的浏览器,现在移动端浏览器一般都支持HTML5,所以使用该jQuery没问题。HTML文件代码:
<!DOCTYPE html>
<h
AspectJ+Javasist记录日志
kane_xie
aspectjjavasist
在项目中碰到这样一个需求,对一个服务类的每一个方法,在方法开始和结束的时候分别记录一条日志,内容包括方法名,参数名+参数值以及方法执行的时间。
@Override
public String get(String key) {
// long start = System.currentTimeMillis();
// System.out.println("Be
redis学习笔记
MJC410621
redisNoSQL
1)nosql数据库主要由以下特点:非关系型的、分布式的、开源的、水平可扩展的。
1,处理超大量的数据
2,运行在便宜的PC服务器集群上,
3,击碎了性能瓶颈。
1)对数据高并发读写。
2)对海量数据的高效率存储和访问。
3)对数据的高扩展性和高可用性。
redis支持的类型:
Sring 类型
set name lijie
get name lijie
set na
使用redis实现分布式锁
qifeifei
在多节点的系统中,如何实现分布式锁机制,其中用redis来实现是很好的方法之一,我们先来看一下jedis包中,有个类名BinaryJedis,它有个方法如下:
public Long setnx(final byte[] key, final byte[] value) {
checkIsInMulti();
client.setnx(key, value);
ret
BI并非万能,中层业务管理报表要另辟蹊径
张老师的菜
大数据BI商业智能信息化
BI是商业智能的缩写,是可以帮助企业做出明智的业务经营决策的工具,其数据来源于各个业务系统,如ERP、CRM、SCM、进销存、HER、OA等。
BI系统不同于传统的管理信息系统,他号称是一个整体应用的解决方案,是融入管理思想的强大系统:有着系统整体的设计思想,支持对所有
安装rvm后出现rvm not a function 或者ruby -v后提示没安装ruby的问题
wudixiaotie
function
1.在~/.bashrc最后加入
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
2.重新启动terminal输入:
rvm use ruby-2.2.1 --default
把当前安装的ruby版本设为默