IDEA15 下運行Scala遇到問題以及解決辦法

為了讓Scala運行起來還是很麻煩,為了大家方便,還是記錄下來:

1、首先我下載的是IDEA的社區版本,版本號為15.

2、下載安裝scala插件:

2.1 進入設置菜單。

??

2.2 點擊安裝JetBrains plugin

2.3 輸入scala查詢插件,點擊安裝

說明:我的IDEA已經安裝,所以這里面沒有顯示出來安裝按鈕,否則右邊有顯示綠色按鈕。

?

3、新建Scala工程

3.1 新建工程

通過菜單:File----》New Project 選擇Scala工程。

并且設置項目基本信息,如下圖:

?

3.2 設置Modules

1)點擊右上角的方塊:

?

2)在左邊選擇Libraries---》+---》Scala SDK--》選擇版本為2.10.4?

說明:如果不存在這個版本可以通過左下角的download去下載。

3)選擇添加Java的Jar文件,選擇Spark和Hadoop關聯的Jar

我這里添加的是:spark-assembly-1.6.1-hadoop2.6.0.jar 這個是spark安裝時候自帶的lib里面有,很大。

定位到jar所在的目錄后,刷新,選擇這個文件,點擊OK,會花費比較長時間建索引。

?

4)在Src源碼目錄新建文件:WordCount.scala

且輸入如下代碼:

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.SparkContext._object WordCount {def main(args: Array[String]) {if (args.length < 1) {System.err.println("Usage:<File>")System.exit(1)}val conf = new SparkConf().setAppName("WordCount")val sc = new SparkContext(conf)val line = sc.textFile(args(0))val words = line.flatMap(_.split("")).map((_, 1))val reducewords = words.reduceByKey(_ + _).collect().foreach(println)sc.stop()}}

 5)編譯運行:

? 需要輸入參數,所以要設置下相關參數信息:

隨便復制個文件過去,然后設置下:

  • 拋出異常:

Exception in thread "main" org.apache.spark.SparkException: A master URL must be set in your configuration
at org.apache.spark.SparkContext.<init>(SparkContext.scala:401)

解決辦法:需要設置下SparkContext的地址:

?

  • ?拋出異常:

16/06/25 12:14:18 ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

解決辦法:

http://stackoverflow.com/questions/19620642/failed-to-locate-the-winutils-binary-in-the-hadoop-binary-path

可能是因為我沒有安裝hadoop的原因,設置下相關信息就可以:

下載:

<a href="http://www.srccodes.com/p/article/39/error-util-shell-failed-locate-winutils-binary-hadoop-binary-path">Click here</a>

設置:HADOOP_HOME為下載后解壓內容的上級目錄,然后在PATH里面添加%HADOOP_HOME%/bin;

4、其他異常

1)異常內容:類或Object XXX已經被定義

? ? ?解決辦法: 這個可能是工程里面設置了兩個source目錄,需要刪除一個。

2)異常內容:sparkContext.class 依賴不存在

? ? 解決辦法:需要引入hadoop的jar包,我這里是:spark-assembly-1.6.1-hadoop2.6.0.jar

3)異常內容:Error:(17, 29) value reduceByKey is not a member of org.apache.spark.rdd.RDD[(String, Int)]

? ?解決辦法: 導入這個:? import org.apache.spark.SparkContext._

4)異常內容:Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/util/concurrent/ThreadFactoryBuilder

? ?解決辦法:添加依賴Jar :guava-11.0.2.jar

5)異常內容:Exception in thread "main" java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet;

? 解決辦法:更改scala-sdk版本為2.10,如果沒有通過如下方式下載:(速度奇慢)

通過project Structure--》LIbraries--》+---》Scala SDK--》 Browse--》選擇2.10---》Download...
6)異常內容:java.lang.AbstractMethodError? at akka.actor.ActorCell.create(ActorCell.scala:580)
? ?解決辦法: 不知道怎么好了,JDK從1.8換到1.7,再次換到1.8就好了,莫名。

5、打包成Jar

?

1、設置下導出Jar信息:

2、設置導出的工程還導出的Main類:

3、通過選擇點擊-號刪除其他依賴的class

4、導出Jar包:

?

5、上傳后執行Jar包

?./spark-submit --master spark://inas:7077 --class WordCount --executor-memory 512m /home/hadoop/sparkapp/scalatest4.jar hdfs://inas:9000/user/hadoop/input/core-site.xml

說明: hadoop文件為以前新建的,在提交之前需要先啟動hadoop再自動spark,然后再用以上辦法提交。

啟動Hdfs:?./start-dfs.sh

啟動spark:./sbin/start-all.sh(沒試過)

可以通過如下方法啟動:

~/project/spark-1.3.0-bin-hadoop2.4 $./sbin/start-master.sh
~/project/spark-1.3.0-bin-hadoop2.4 $./bin/spark-class org.apache.spark.deploy.worker.Worker spark://inas:7077
注意:必須使用主機名

啟動模式為standaline模式。

Spark Standalone Mode 多機啟動,則其他主機作為worker啟動,設置master主題。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458325.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458325.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458325.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

通過掃碼自定義鏈接安裝iOS app,版本更新總結。

1、打包ipa&#xff0c;plist工具&#xff1a;xcode6證書&#xff1a;企業級開發證書 1.1&#xff09;xcode6開始企業級打包時不在生成plist&#xff0c;需要自己編寫&#xff1a;模版見下&#xff1a; <?xml version"1.0" encoding"UTF-8"?><!…

安排與愿想

機器學習的理論學了好久了&#xff0c;對于回歸&#xff0c;分類&#xff0c;聚類&#xff0c;數據的預處理的各種算法也有了深刻認識&#xff1b; 但紙上談兵&#xff0c;沒有意義&#xff1b; 從今天開始用起來吧&#xff0c;把各種算法的實踐以及思路記錄下來&#xff0c;附…

pdf破解版

網頁說明http://aikongke.com/3754.html1118-1805-7284-0295-8107-3663您好 親 看到您拍的寶貝了&#xff01; 鏈接&#xff1a;http://pan.baidu.com/s/1c0iE44C 密碼&#xff1a;bnyc XI版轉載于:https://www.cnblogs.com/computerMatainance/p/5192834.html

使用try-with-resources替代try finally釋放資源

2019獨角獸企業重金招聘Python工程師標準>>> 1、舊社會 Java里&#xff0c;對于文件操作IO流、數據庫連接等開銷非常昂貴的資源&#xff0c;用完之后必須及時通過close方法將其關閉&#xff0c;否則資源會一直處于打開狀態&#xff0c;直至程序停止&#xff0c;增加…

MFC模態對話框和非模態對話框

MFC中對話框有兩種形式&#xff0c;一個是模態對話框&#xff08;model dialog box&#xff09;&#xff0c;一個是非模態對話框&#xff08;modeless dialog box&#xff09;。一、模態對話框&#xff08;model dialog box&#xff09;在程序運行的過程中&#xff0c;若出現了…

平板電腦離壽終正寢還有多遠?

近期有評論稱&#xff0c;因為大尺寸智能手機越來越普及&#xff0c;小尺寸平板正遭受著越來越嚴重的沖擊&#xff0c;在這樣的背景下&#xff0c;平板廠商也紛紛轉攻超大尺寸平板市場&#xff0c;以此避開大尺寸智能手機的競爭&#xff0c;只是。這樣的策略轉變是否能扭轉平板…

Swift 與 JSON 數據

轉載自&#xff1a; http://www.cnblogs.com/theswiftworld/p/4660177.html 我們大家平時在開發 App 的時候&#xff0c;相信接觸最多的就是 JSON 數據了。只要你的 App 有讀取網絡數據的功能&#xff0c;你就免不了要與 JSON 打交道。比如你做一個新聞 App&#xff0c;你要讀取…

TeamViewer - 最好用強大的免費跨平臺遠程桌面控制軟件 (支持電腦和手機)

from&#xff1a;很早以前 LYcHEE 就提到過&#xff0c;家中的潮人爺爺奶奶每天擺弄著電腦&#xff0c;看看新聞發發郵件&#xff0c;安享晚年生活。只是意料之中的&#xff0c;電腦上莫名出現各種問題&#xff1f;不翼而飛的圖標&#xff1f;照片又忘記怎么導出了&#xff1f;…

【設計模式】7、橋接模式

橋接模式就是對一個類的方法進行抽象化&#xff0c;吧不相關的因素提取出來&#xff0c;發展出第二個類 1 package com.shejimoshi.structural.Bridge;2 3 4 /**5 * 功能&#xff1a;橋接模式使用6 * 意圖&#xff1a;將抽象部分與它的實現部分分離&#xff0c;使他們都…

hadoop HA 之 QJM

前言 本文主要通過對hadoop2.2.0集群配置的過程加以梳理&#xff0c;所有的步驟都是通過自己實際測試。文檔的結構也是根據自己的實際情況而定&#xff0c;同時也會加入自己在實際過程遇到的問題。搭建環境過程不重要&#xff0c;重要點在于搭建過程中遇到的問題&#xff0c;解…

TeamViewer免費版和付費版有什么不同

提到遠程控制軟件 TeamViewer無疑是目前業內知名度比較高的一款&#xff0c;所以說到遠程控制軟件可能大部分人首先想到的就是TeamViewer。在使用功能上&#xff0c;它支持遠程桌面控制、文件傳輸、遠程計算機鎖定、視頻會話、主控方和被控方身份互換&#xff0c;遠程管理無人執…

iOS-關于cell的重疊問題

記得很早之前遇到過一個問題&#xff0c;關于cell的重疊問題&#xff0c;現在回顧總結一下。 iOS中tableview的cell顯示是會消耗內存的&#xff0c;如果要顯示無數個cell&#xff0c;不可能把每個cell都存儲下來&#xff0c;為了解決這個問題&#xff0c;cell就用了重用機制&am…

每天一個Linux命令-ls

ls 命令在linux系統中是使用頻率最頻繁的幾個命令之一,直接使用不帶目錄名&#xff0c;是默認顯示當前目錄的文件及子目錄名稱&#xff0c;ls加指定目錄名&#xff0c;則可以查看指定目錄下的文件及子目錄名稱&#xff0c;ls不僅可以查看目錄下有哪些文件和子目錄&#xff0c;還…

halcon資料鏈接

本文轉載自xiamentingtao&#xff0c;原文地址如下&#xff1a; http://blog.csdn.net/xiamentingtao/article/details/52583787 1目錄(?)[]論壇培訓博客文檔書籍視頻論壇、培訓halcon學習網&#xff1a;http://www.ihalcon.com/鳥叔機器視覺&#xff1a;http://bbs.szvbt.com…

【代碼筆記】iOS-翻書效果的實現

代碼&#xff1a; RootViewController.m #import "RootViewController.h"interface RootViewController ()endimplementation RootViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {self [super initWithNibName:…

修改TFS與本地源代碼映射路徑

使用源代碼管理資源管理器修改工作區 在“文件”菜單上單擊“源代碼管理”&#xff0c;再單擊“工作區”。 在“管理工作區”對話框的“名稱”列下&#xff0c;突出顯示要修改的工作區&#xff0c;然后單擊“編輯”。 在“編輯工作區”對話框中&#xff1a; 修改“名稱”框中…

halcon基礎知識

一、程序中的顏色&#xff1a; 綠色&#xff1a;注釋 褐色&#xff1a;控制開發 淺藍色&#xff1a;外部函數——HDevelop函數文件&#xff0c;可在所有Halcon程序中使用 深藍色&#xff1a;圖像獲取和處理 紫色&#xff1a;內部函數——本地程序函數&#xff0c;只在當前程序使…

停止過度設計,開發客戶需要的軟件

在與許多不同的團隊合作過之后&#xff0c;Greg Young發現大家做項目時經常會大幅度的過度設計。比如一個預計要開發9個月的項目&#xff0c;換個角度思考一下&#xff0c;卻可能只需要幾個星期就可以提交95%的功能。Young在最近倫敦舉行的DDD eXchange大會上著重闡述了這一點。…

Halcon—Tuple中符號的含義

2014年08月08日 21:20:30閱讀數&#xff1a;5429實例一&#xff08;3d_coordinates.hdev&#xff09;&#xff1a;for I : 1 to NumImages by 1read_image (Image, calib/calib-3d-coord-I$02d)——C:\Program Files\MVTec\HALCON-10.0\images\的calib文件夾中開頭是calib-3d-c…

如果我是博客園的產品經理【上】

題記 這是一個系列文章的第一篇 我打算寫一個《如果我是XXX的產品經理》系列&#xff0c; 因為我是博客園的老用戶了&#xff0c;這個系列又是寫在博客園上的 所以先拿博客園開刀&#xff0c; 后面估計還會寫QQ音樂&#xff0c;有道云筆記&#xff0c;github&#xff0c;foxmai…