idea中導(dǎo)入項(xiàng)目后main方法無法Run的解決
idea導(dǎo)入項(xiàng)目后main方法無法Run
1.問題
如截圖所示,紅色框處并未出現(xiàn)run按鈕,無法運(yùn)行
2.解決辦法
調(diào)試run按鈕
2.1)如圖所示
進(jìn)行如下兩步操作,先點(diǎn)擊自己的項(xiàng)目,再點(diǎn)擊Open Module Settings
2.2點(diǎn)擊Sources
別忘了點(diǎn)擊右下角的Apply或OK
2.3就這樣Run按鈕就調(diào)試出來了
idea導(dǎo)入項(xiàng)目各種報(bào)錯(cuò)問題
問題一
[ERROR] scalac error: E:\spark\spark-rdd-源碼\spark-rdd\target\classes does not exist or is not a directory
[INFO] scalac -help gives more information
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 15.488 s
[INFO] Finished at: 2019-01-05T21:03:33+08:00
[INFO] Final Memory: 58M/598M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.1.6:compile (default) on project spark-rdd: wrap: org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
如果是報(bào)上面的錯(cuò)誤的話,你可以找到關(guān)鍵的ERROR日志如下:
[ERROR] scalac error: E:\spark\spark-rdd-源碼\spark-rdd\target\classes does not exist or is not a directory
可以看出,你的spark-rdd的項(xiàng)目的文件路徑中帶有中文,這個(gè)是不允許的,所以你的項(xiàng)目所在的文件的路徑中最好不要帶有中文
問題二
報(bào)上面的錯(cuò)是因?yàn)槟愕膒om.xml中沒有設(shè)置上groupId和version兩個(gè)屬性,在pom.xml中加上這兩個(gè)屬性即可,如下:
<groupId>com.jrq</groupId> <artifactId>spark-rdd</artifactId> <version>1.0-SNAPSHOT</version>
然后點(diǎn)擊右下角的Import Changes,這個(gè)時(shí)候如果有依賴的jar報(bào)沒有下載下來的話,IDEA會(huì)去下載依賴jar包(這里需要等一段時(shí)間),一段時(shí)間后,pom.xml中就沒有任何的報(bào)錯(cuò)(沒有了紅色提示線)
groupId:項(xiàng)目組織唯一的標(biāo)識(shí)符,實(shí)際對(duì)應(yīng)JAVA的包的結(jié)構(gòu) artifactId:就是項(xiàng)目的唯一的標(biāo)識(shí)符,實(shí)際對(duì)應(yīng)項(xiàng)目的名稱,就是項(xiàng)目根目錄的名稱
groupid和artifactId被統(tǒng)稱為“坐標(biāo)”是為了保證項(xiàng)目唯一性而提出的,如果你要把你項(xiàng)目弄到maven本地倉庫去,你想要找到你的項(xiàng)目就必須根據(jù)這兩個(gè)id去查找。
groupId一般分為多個(gè)段,這里我只說兩段,第一段為域,第二段為公司名稱。域又分為org、com、cn等等許多,其中org為非營利組織,com為商業(yè)組織。舉個(gè)apache公司的tomcat項(xiàng)目例子:這個(gè)項(xiàng)目的groupId是org.apache,它的域是org(因?yàn)閠omcat是非營利項(xiàng)目),公司名稱是apache,artigactId是tomcat。
比如我創(chuàng)建一個(gè)項(xiàng)目,我一般會(huì)將groupId設(shè)置為com.jrq,com表示域?yàn)樯虡I(yè)組織,jrq是我個(gè)人姓名縮寫,artifactId設(shè)置為testProj,表示你這個(gè)項(xiàng)目的名稱是testProj,依照這個(gè)設(shè)置,你的包結(jié)構(gòu)最好是com.jrq打頭的,如果有個(gè)StudentDao,它的全路徑就是com.jrq.dao.StudentDao
問題三
error: source file ‘E:\spark\spark-rdd\spark-rdd\src\main\java\com\jrq\spark\rdd\ ?.java’ could not be found
其實(shí)是出現(xiàn)了亂碼問題了,建議你直接將項(xiàng)目中的 中文字.java這個(gè)文件刪掉即可
問題四
解決方法是:maven clean -> maven compile
問題五
文件下有相同文件,改名
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java的JSON格式轉(zhuǎn)換庫GSON的初步使用筆記
GSON是Google開發(fā)并在在GitHub上開源的Java對(duì)象與JSON互轉(zhuǎn)功能類庫,在Android開發(fā)者中也大受歡迎,這里我們就來看一下Java的JSON格式轉(zhuǎn)換庫GSON的初步使用筆記:2016-06-06Java設(shè)計(jì)模式中單一職責(zé)原則詳解
這篇文章主要介紹了Java設(shè)計(jì)模式中單一職責(zé)原則詳解,單一職責(zé)原則 (SRP) 是軟件設(shè)計(jì)中的一個(gè)重要原則,它要求每個(gè)類只負(fù)責(zé)一個(gè)職責(zé),需要的朋友可以參考下2023-05-05解決idea創(chuàng)建版本時(shí)只有Java21和Java17選項(xiàng)
你是否在使用IntelliJ?IDEA創(chuàng)建新項(xiàng)目時(shí)遇到了只有Java?21和Java?17的選項(xiàng)?別擔(dān)心,我們的指南將為你提供解決方案,通過簡單的步驟,你將能夠選擇你需要的任何Java版本,繼續(xù)閱讀,讓我們開始吧!2024-03-03Java內(nèi)存之happens-before和重排序
在JMM(Java內(nèi)存模型)中,如果一個(gè)操作執(zhí)行的結(jié)果需要對(duì)另一個(gè)操作可見,那么這兩個(gè)操作之間必須存在happens-before關(guān)系。下面小編來簡單介紹一下2019-05-05Hibernate延遲加載原理與實(shí)現(xiàn)方法
這篇文章主要介紹了Hibernate延遲加載原理與實(shí)現(xiàn)方法,較為詳細(xì)的分析了Hibernate延遲加載的概念,原理與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-03-03Java 數(shù)據(jù)流之Broadcast State
這篇文章主要介紹了Java 數(shù)據(jù)流之Broadcast State,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09