標籤:pos mave pre index google 目錄結構 export 目錄 apache
---------------------
前言---------------------項目關係,希望用Spark GraphX做資料分析及映像展示,但前提是得會spark;spark是基於scala的,scala是基於JAVA的……所以,要想用Spark GraphX,技術堆棧大體上應該是這樣的:Java -> Scala -> Spark -> Spark GraphX。 JAVA都這麼多年了……就不說了,我們從學習Scala開始。 --------------------
說明--------------------1)Java配置完成,版本在1.8以上;因為Scala是基於Java開發的,編譯之後產生的class檔案也可以遠行在JVM上,並被Java調用。2)IntelliJ IDEA已安裝完成(我的版本是:2017.2.2)3)開發環境:MacOS --------------------
安裝、配置Scala--------------------
1. 安裝Scala SDK先到http://www.scala-lang.org/download/ 下載壓縮包scala-2.12.4.tar並解壓。(也可以在IntelliJ IDEA 建立第一個scala源檔案時,根據提示安裝,詳見《Scala & IntelliJ IDEA:環境搭建、helloworld》) 配置環境變數:1)vi /etc/profile在末尾添加:export SCALA_HOME=/Users/yp-tc-m-2755/Documents/software/scala-2.12.4export PATH=$PATH:$SCALA_HOME/bin儲存退出。 2)輸入命令,使其生效:source /etc/profile 3)檢驗(如果沒生效,則重啟終端):$ scala -versionScala code runner version 2.12.4 -- Copyright 2002-2017, LAMP/EPFL and Lightbend, Inc.
2. 安裝Scala外掛程式依次:IntelliJ IDEA -> Preferences -> Plugins -> Browse repositories...(或是在IntelliJ IDEA歡迎頁面,右下角點擊:Configure->Preferences) 1)在搜尋方塊輸入scala2)在列表中選擇Scala3)點擊右側框的“Install”按鈕(是安裝完成之後的樣子) --------------------
建立Java Web項目--------------------
1. 使用MAVEN架構,建立web項目我選擇的是:maven-archetype-webapp。不為別的,就是因為會自動建立一個index.jsp,方便實驗tomcat是否正常啟動…… 目錄結構大概是這個樣子的: 2. 手動添加java,scala檔案夾1)在main目錄下建立java,scala檔案夾點擊File->project structure->Modules按右鍵main檔案夾,選擇“New Folder”,分別建立java和scala檔案夾。 2)分別選中java和scala,點擊上面的按鈕“Sources",這樣,就標記了這兩個檔案夾下的檔案都是源碼。否則,想要建立源檔案的時候,右鍵java或scala,在new->file裡沒有Java Class和Scala Class選項。
3. 在pom.xml裡添加對scalas的依賴<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion> <groupId>wangjun</groupId><artifactId>ScalaInJava</artifactId><packaging>war</packaging><version>1.0-SNAPSHOT</version> <name>ScalaInJava Maven Webapp</name><url>http://maven.apache.org</url> <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency> <dependency><groupId>org.scala-lang</groupId><artifactId>scala-library</artifactId><version>2.12.4</version></dependency><dependency><groupId>org.scala-lang</groupId><artifactId>scala-compiler</artifactId><version>2.12.4</version></dependency><dependency><groupId>org.scala-lang</groupId><artifactId>scala-reflect</artifactId><version>2.12.4</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.12</version></dependency><dependency><groupId>com.google.collections</groupId><artifactId>google-collections</artifactId><version>1.0</version></dependency></dependencies><build><finalName>ScalaInJava</finalName><plugins><plugin><groupId>org.scala-tools</groupId><artifactId>maven-scala-plugin</artifactId><version>2.15.2</version><executions><execution><goals><goal>compile</goal><goal>testCompile</goal></goals></execution></executions></plugin></plugins></build></project> 注意:如果不添加<plugin>,在編譯的時候會出現錯誤:no prefix ‘scala‘ 或 找不到符號
4. 建立源檔案:1)在java目錄下建立HelloJava.java,內容如下:public class HelloJava {public static void main(String[] args) {System.out.println("Hello : Java");HelloScala helloScala = new HelloScala();helloScala.sayHello( " my first scala!");}} 2)在scala目錄下建立HelloScala.scala,內容如下:class HelloScala {def sayHello(x: String): Unit = {println("hello, " + x)}} 可以看到,在HelloJava裡調用了HelloScala對函數sayHello。
5. 運行:在HelloJava.java編輯框任意位置,按右鍵,選擇:Run ‘HelloJava.main()‘控制台輸出結果: OK,可以開始Scala之旅了! --------------------參考--------------------1)scala intellij idea 環境搭建及編譯、打包https://www.cnblogs.com/yjmyzz/p/4694219.html2)IntelliJ IDEA + Maven建立Java Web項目https://www.cnblogs.com/davidgu/p/5887938.html3)運用Intellij建立自己的第一個Maven工程http://blog.csdn.net/zhangxing52077/article/details/695258324)Maven 三種archetype說明http://blog.csdn.net/cx1110162/article/details/78297654
Scala & IntelliJ IDEA環境搭建升級版:在JAVA中調用Scala的helloworld