sbt编译spark程序提示value toDF is not a member of Seq() 前提 使用Scala编写的Spark程序,在sbt编译打包的时候提示value toDF is not a member of Seq(),出问题的代码如下: val urlDS = Seq(STU(age, count)).toDS() 其中STU是一个定义的case class,定义如下: case class STU(age: Int, count: Int) 查找原因 开始以为是toDS(…
问题导读: 1.什么是sbt? 2.sbt项目环境如何建立? 3.如何使用sbt编译打包scala? [sbt介绍 sbt是一个代码编译工具,是scala界的mvn,可以编译scala,java等,需要java1.6以上. sbt项目环境建立 sbt编译需要固定的目录格式,并且需要联网,sbt会将依赖的jar包下载到用户home的.ivy2下面,目录结构如下: |--build.sbt |--lib |--project |--src |   |--main |   |    |--scala…
问题导读: 1.什么是sbt? 2.sbt项目环境如何建立? 3.如何使用sbt编译打包scala? sbt介绍 sbt是一个代码编译工具,是scala界的mvn,可以编译scala,java等,需要java1.6以上. sbt项目环境建立 sbt编译需要固定的目录格式,并且需要联网,sbt会将依赖的jar包下载到用户home的.ivy2下面,目录结构如下: |--build.sbt |--lib |--project |--src | |--main | | |--scala | |--tes…
前些天用maven编译打包spark,搞得焦头烂额的,各种错误,层出不穷,想想也是醉了,于是乎,换种方式,使用sbt编译,看看人品如何! 首先,从官网spark官网下载spark源码包,解压出来.我这边使用的是1.4.0版本. 然后,我们需要把sbt配置好,配置很简单,无非就是SBT_HOME什么的,大家可以参考官网给出的安装配置手册. 在window的命令行模式下进入刚刚解压的spark源码目录下,我们根据官网提示的命令输入: sbt -Pyarn -Phadoop-2.3 assembly…
前言 最近为了解决Spark2.1的Bug,对Spark的源码做了不少修改,需要对修改的代码做编译测试,如果编译整个Spark项目快的话,也得半小时左右,所以基本上是改了哪个子项目就单独对那个项目编译打包. Spark官方已经给出了如何使用mvn单独编译子项目的方法:http://spark.apache.org/docs/latest/building-spark.html#building-submodules-individually 使用mvn单独编译子项目是节约了不少时间.但是频繁的改…
今日在学习scala和spark相关的知识.之前在eclipse下编写了wordcount程序.但是关于导出jar包这块还是很困惑.于是学习sbt构建scala. 关于sbt的介绍网上有很多的资料,这里就不解释了.参考:http://wiki.jikexueyuan.com/project/sbt-getting-started/install-sbt.html 关于linux下(centos)安装sbt: 依次执行 curl https://bintray.com/sbt/rpm/rpm >…
问题描述: 在利用visualStudo进行C语言编程时,若C语言源程序中有print,freopen等函数时,IDE软件总是unSafe,而且无法通过编译. 解决方案: 在<视图>中找到<解决方案资源管理器>,选中你的工程项目名称,右键<属性>→<配置属性>→<C/C++>→<预处理器>→<预处理器定义>——>找到右边的下箭头"﹀",点击进去→<编辑>→在最上面的可编辑处添加如下带颜…
sbt打包Scala写的Spark程序,打包正常,提交运行时提示找不到对应的类 详述 使用sbt对写的Spark程序打包,过程中没有问题 spark-submit提交jar包运行提示找不到对应的类 解决 编译环境没有变化,将代码拷贝到其他项目下打包可以运行,无解 偶然发现IDEA打开的sbt文件显示很多错误,查看详情发现存在错误:java-lang-ClassNotFoundException-org-jetbrain,遂谷歌之,找到了这个网页 ,说是IDEA的bug,打开use sbt she…
1.从https://www.scala-sbt.org/download.html官网上寻找所需要的安装包 可以直接本地下载完扔进去也可以wget路径,在这里我用的是sbt1.2.8版本的,下载到/usr/local目录下 2.将下载的sbt文件中的sbt-launch.jar拷贝到/usr/local/下的sbt目录中的一级目录下 3.在/usr/local/sbt中创建一个sbt脚本(vim ./sbt),添加以下内容: SBT_OPTS="-Xms512M -Xmx1536M -Xss1…
由于实际环境较为复杂,从Spark官方下载二进制安装包可能不具有相关功能或不支持指定的软件版本,这就需要我们根据实际情况编译Spark源代码,生成所需要的部署包. Spark可以通过Maven和SBT两种方式进行编译,再通过make-distribution.sh脚本生成部署包 Maven方式编译需要Maven工具,而SBT方式编译需要安装Git工具,两种方式均需要在联网下下载依赖包.…