• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

分布式课程——踩坑记录_2

武飞扬头像
csdg
帮助2

Q1: 新建Scala类时点击New没有Scala class出现

点击new时未出现Scala class是因为Scala相关配置未导入

可通过如下操作导入Scala配置:依次点击“File”——“Project Structure”——“Platform Settings”下的“Global Libraries”,右键选中中栏中的scala-sdk-2.11.12,选中“Add to Modules...”,随后在弹出来的界面选择“OK”,最后点击右下角“Apply”、“OK”即可。

学新通

可以成功new scala class了学新通

Q2:  No tests were found

运行Spark项目时显示没有找到测试模块,edit configuration后依然没用

step 1: 运行maven - Lifecycle - clean

学新通

运行完报错```Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M2:enforce (enforce-banned-dependencies) on project DSPP_Exercise: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed.``` 

根据报错这是enforce插件检测规则失败,

enforcer插件的作用: 对环境进行约束和检查

step 2: 进到源码的根目录下,找到pom.xml文件,打开它,找到maven-enforcer-plugin所在位置

如图,只有对规则校验的约束,那么设置规则校验失败不影响构建流程即可,将true改为false

学新通

 运行成功

编程

数据类型的转换(使用scala编写)

parallelInput.rdd.map().reduce()  // parallelInput为JavaRDD[Integer]类型

我们首先使用 rdd 方法将 JavaRDD[Integer] 类型的对象转换为 RDD[Integer] 类型的对象,然后使用 map() 方法将其转换为 RDD[Int] 类型的对象。如果使用reduce()使会将`RDD[Int]`转换为`Int`型数据。

如果要得到`JavaRDD[Integer]`的数据类型应该先使用`map()`方法将`RDD[Int]`转化为`RDD[Integer]`,再使用`JavaRDD.fromRDD()`将`RDD[Integer]`转化为`JavaRDD[Integer]`,操作如下

  1.  
    val outputCount = count.map(Integer.valueOf(_)) // 将RDD[Int]转化为RDD[Integer]
  2.  
    JavaRDD.fromRDD(outputCount: RDD[Integer]) // 将RDD[Integer]转化为JavaRDD[Integer]

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgabecg
系列文章
更多 icon
同类精品
更多 icon
继续加载