Scalding初探之番外篇:Mac OS下的安装
把你从写繁琐的Map-reduce Job中解放出来,写分布式跟写本地程序没两样,Scalding真真代表着先进生产力的方向啊
心动不如行动,赶紧装一个吧
1 安装JDK
2 安装Homebrew
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
brew update
brew doctor
方法1:
https://github.com/twitter/scalding/wiki/Scala-and-sbt-for-Homebrew-users
方法2:
3 安装sbt
brew install sbt
http://www.scala-lang.org/download/install.html
解压到 /usr/local/share目录下,重命名为scala
vi ~/.bash_profile
export SCALA_HOME=/usr/local/share/scala
export PATH=$PATH:$SCALA_HOME/bin
source ~/.bash_profile
然后再任意一个目录下都可以使用scala命令啦~\(≧▽≦)/~好了
scala> :quit
5 将Scalding源代码从git上弄下来
git clone https://github.com/twitter/scalding.git
查看源代码目录下的project/Build.scala中的scalaVersion,发现默认是支持Scala 2.9.3的,更改project/Build.scala的line17为将将line153的java改成scala
下面这步可选,反正我没有成功
ln -s scripts/scald.rb $HOME/bin/
可以在.bash_profile中设置一下
export SBT_OPTS="-XX:+CMSClassUnloadingEnabled -XX:PermSize=256M -XX:MaxPermSize=512M"
不然下面的过程可能会遇到OutOfMemoryError
Q) What happens if I get OutOfMemoryErrors when running "sbt assembly"?
A) Create ~/.sbtconfig with these options: SBT_OPTS="-XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:PermSize=256M -XX:MaxPermSize=512M"
下面可能是个十分之漫长的过程,第一次用了很久,第二次用校园网失败了,第三次校园网挂VPN等了一个下午update还没完,要哭了
./sbt update
#./sbt test # runs the tests; if you do 'sbt assembly' below, these tests, which are long, are repeated
./sbt assembly # creates a fat jar with all dependencies, which is useful when using the scald.rb script
4 安装Scala IDE for Eclipse with the Scala Worksheet
到这里下载Scala 2.10.x的Mac OS X Cocoa 64 bit版本
5 打开这个解压后伪装成正常Eclipse的家伙
挥洒下人生中第一个HelloWorld.scala
object HelloWorld extends App {
println("Hello, World!")
}
或者
object HelloWorld {
def main(args: Array[String]) {
println("Hello, World!")
}
}
6 添加Vim语法高亮支持
到https://github.com/scala/scala-dist下载工具,复制tool-support/src/vim里"indent", "syntax" and "ftdetect"文件夹到~/.vim目录下,给~/.vimrc加上一行syn on
Scalding初探之番外篇:Mac OS下的安装的更多相关文章
- vue学习【番外篇】vue-cli脚手架的安装
大家好,我是一叶,今天和大家分享的是vue-cli脚手架的安装,关于vue-cli的优点,我就不赘述了. 一.检查安装node 安装vue-cli之前,先检查node是否安装.win+R,输入cmd打 ...
- Mac OS下pip安装 pillow
sudo pip install pil报错如下:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Develo ...
- iOS冰与火之歌(番外篇) - 基于PEGASUS(Trident三叉戟)的OS X 10.11.6本地提权
iOS冰与火之歌(番外篇) 基于PEGASUS(Trident三叉戟)的OS X 10.11.6本地提权 蒸米@阿里移动安全 0x00 序 这段时间最火的漏洞当属阿联酋的人权活动人士被apt攻击所使用 ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- 番外篇1:在Windows环境中安装JDK
他山之石,可以攻玉!欢迎关注我的微信公众号 本文作为构建第一个Java程序的番外篇一,跟大家探讨下在Windows下怎么安装JDK.由于本人没有Mac,因此如果是Mac的同学,请自行百度哦! 读前预览 ...
- [uboot] (番外篇)uboot之fdt介绍
http://blog.csdn.net/ooonebook/article/details/53206623 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...
- 智能家居实践(番外篇)—— 接入 HomeKit 实现用 Siri 控制家电
转载:智能家居实践(番外篇)—— 接入 HomeKit 实现用 Siri 控制家电 前面我写了一个系列共三篇的智能家居实践,用的是 Amazon Echo 实现语音控制,但是 Amazon Echo ...
- [uboot] (番外篇)uboot之fdt介绍 (转)
以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为例 [uboot] uboot流程系列:[project X] tiny210(s5pv210)上电启动流程(B ...
- electron教程(番外篇二): 使用TypeScript版本的electron, VSCode调试TypeScript, TS版本的ESLint
我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...
随机推荐
- 使用redis-dump进行Redis数据库合并
前言 最近处理数据时,涉及到跨服务器访问的问题,我有两个Redis服务器分别在不同的机器上,给数据维护带来了诸多不便,于是便研究了下如何将两个Redis中的数据合并到一处. 从网站搜了一些工具,找到了 ...
- centos7 firewall 防火墙 命令
为了架设ss在vultr上买了一个日本的vps 用的是centos7的系统 防火墙是 firewall 捣鼓了两天 在这里总结一下. 如果小伙伴也准备在vultr上买vps 在注册是 可以使用这个优 ...
- Quick-Cocos2d-x初学者游戏教程1
Quick-Coco2d-x安装: Quick 安装完成后,在它的根目录下可以找到有两个名为setup_mac.sh.setup_win.bat的批处理脚本,它们分别是搭建Mac和Windows开发环 ...
- jquery总结05-常用事件01-鼠标事件
鼠标事件 .click()单机事件 包括.mousedown()(鼠标按下).mouseup()(放松鼠标)两个事件 .dbclick()双击事件 两个click事件,中间的间隔由系统而定 .mou ...
- C#中静态与非静态方法比较
C#静态方法与非静态方法的区别不仅仅是概念上的,那么他们有什么具体的区别呢?让我们通过本文向你做一下解析. C#的类中可以包含两种方法:C#静态方法与非静态方法.那么他们的定义有什么不同呢?他们在使用 ...
- 01-C语言概述
本文目录 一.C语言简史 二.C语言的特点 三.C语言能做什么? 四.C语言的版本问题 五.C语言语法预览 回到顶部 一.C语言简史 C语言于1972年发明,首次使用是用于重写UINX操作系统(UNI ...
- Android:padding和android:layout_margin的区别
padding是站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离. margin则是站在自己的角度描述问题,规定自己和其他(上下左右)的view之间的距离
- Mac下安装Wireshark,双击闪退
Mac OS X上使用Wireshark抓包(http://blog.csdn.net/phunxm/article/details/38590561) Mac下安装Wireshark /Appli ...
- C++类的交叉引用
对于C++中,两个类中相互引用对方,当然只能是在指针的基础上,于是我们知道.也就是说在A类的有一个指针引用B类的成员函数或成员对象,而B类中又有一个指针来访问A中的成员函数或对象.这就是C++中类的交 ...
- (40) Aeroo 服务安装
服务器 Odoo 8.0 操作系统: Ubuntu trusty14.04 说明:安装aeroo 要的要两个服务 areoo-docs 和 soffice 这里设定两个端口 8989 和 8100 = ...