Spark成长之路(1)-搭建环境
来源:互联网 发布:软件测试核心期刊 编辑:程序博客网 时间:2024/06/13 17:22
参考文章:
搭建Spark源码研读和代码调试的开发环境
Apache Spark 源码阅读
环境
git clone
git clone https://github.com/apache/spark.git
编译源码
build/mvn -T 4 -DskipTests clean package
比较耗时,我在公司编译的,断断续续耗时大约2个小时。编译成功后如下图所示:
IDEA import
Menu -> File -> Open -> {spark dir}/pom.xml -> Open as Project
这个过程还是挺快的,几分钟就搞定了。成功以后的项目结构如下:
增量开发
我们在开发过程中,有一点小的修改,想看下效果,不想再重新编译一遍所有的依赖,而只想把新的改变编译一下。可以使用sbt
的增量编译。
build/sbt clean package//首次全量编译export SPARK_PREPEND_CLASSES=true//增量或build/sbt ~compile//增量编译
ScalaStyle检查与IDEA自动格式化冲突
scalastyle-config.xml
配置了代码风格检查,但是与IDEA默认的格式化代码有部分冲突,我使用中报如下错误
//使用Javadoc样式缩进注释Use Javadoc style indentation for multiline comments//一行字符超过了100个File line length exceeds 100 characters//注释的开头要插入空格Insert a space after the start of the comment
为了保持和spark官方的分割保持一样,我们修改IDEA的代码风格,首先接入codestyle
Preferences->Editor->Code Style->Scala
修改如下:
- ScalaDoc
- 取消Enable scaladoc formatting
- 取消Use scaladoc indent for leading asterisk
- Wrapping and Braces
- Method declaration parameters
- 取消 Align when multiline
- 勾选 Ensure right margin is not exceeded(Code style下设置Right margin=100)
- Method declaration parameters
上下的一个注释,是因为源码本身不规范,结尾以**/结尾了。删掉以后就恢复了。这只是解决了报错信息,但是还有很多代码风格和源码不一致,所以最后为了不造成之前的风格因为本地IDEA的格式化造成变更,建议局部格式化代码。不要使用全局格式化。看看能不能找到源码开发人员使用的Code Style配置文件,直接导入最好。
Code Style Guide
阅读全文
0 0
- Spark成长之路(1)-搭建环境
- 5-1、Spark环境搭建
- Spark成长之路(5)-消息队列
- Spark成长之路(6)-Correlation
- Spark成长之路(7)-Hypothesis testing
- Spark成长之路(8)-TFIDF
- Spark成长之路(9)-Word2Vec
- Spark成长之路(10)-CountVectorizer
- Spark成长之路(11)-ngram
- Spark成长之路(12)-Gradient Descent
- xmpp学习之环境搭建(Openfire+spark环境搭建)
- Openfire之Spark开发环境搭建
- spark之hadoop2.6环境搭建笔记
- 学习spark之基础环境搭建
- spark基础知识之搭建环境<一>
- hadoop之spark完全分布式环境搭建
- Spark入门三部曲之第二步Spark开发环境搭建
- Spark学习笔记之-Spark Standalone(环境搭建)
- SSH:Action中Service无法实例化
- TensorFlow 实现流行的机器学习算法的教程汇集
- [已解决]Ubuntu安装libssl-dev失败
- WIN10连接远程桌面(以阿里云服务器为例)
- 对数据结构和算法的简单理解总结
- Spark成长之路(1)-搭建环境
- Hadoop平台搭建-ubuntu下
- 多线程一定快吗
- Quartz分布式任务(二)
- 005. Spring 自动装配
- 每段时间Android开发10个知道(初级系列)-170622
- poj 3176 Cow Bowling
- 智能指正和强弱指针的实现
- 返回顶部