MapReduce打包jar包並運行的步驟操作以及重要的注意事項


————————————————————————————————————————

一、打包jar包以及上傳的步驟

執行mapreduce程序時,我們常常需要按自己的需求去寫mapreduce程序。eclipse是我們最常用的java編輯工具,一下就用eclipse爲例。

在eclipse把mapreduce程序進行打包

第一步:選中mapreduce程序所在的項目,點擊左上角File > Export
第一步操作
第二步:彈出窗口中選中JAVA > JAR file,接着Next
第二步
第三步:按圖中順序進行操作,其中第四步是JAR包的保存目錄(上傳JAR包時打開該目錄選擇JAR包即可)
第三步
第四步:無需對窗口進行操作,直接Next下一步。
第四步
第五步:選擇Browse對MapReduce程序的主類名進行指定。
第五步
最後選擇OK,JAR包便保存到你自己指定的目錄裏了。
第五步

通過Xshell把JAR包上傳到linux

小白剛上手大多使用虛擬機進行操作,那就需要用Xshell連接到你需要進行操作的linux,並使用rz指令然後選擇你保存jar包的目錄上傳你需要的jar包文件。

二、執行jar包的注意事項

一般情況下,按上述步驟即可對jar包進行打包。但是有了jar包後我就需要對它進行執行,執行過程有些地方的細節容易被忽略掉,以下就討論其中兩個重要的操作細節。(java編輯器還是以eclipse爲例)

出現jdk版本異常的問題

情況描述

:在執行jar包程序時,出現如下圖的jdk版本異常;
jdk版本異常

原因

linux環境下的jdk版本與eclipse所用來打包jar包的jdk版本不兼容。譬如:eclipse下用jdk11進行打包,而linux下用的是jdk1.8;這樣jdk高低版本不兼容的情況下就會導致jdk版本異常。

解決辦法

既然jdk版不兼容,那就把jdk的版本調到兼容了就可以了。

  1. 查看linux環境下的jdk版本,把eclipse下調爲linux下可以兼容的版本,一般就是高版本兼容低版本的。那麼,我們要怎麼怎麼換eclipse的jdk版本呢?步驟如下:
    選中jar包所在的項目文件,然後右擊選擇最後一個properties,接着按下圖順序進行操作即可;
    properties中jdk版本選擇

  2. 假如不按上面那個解決辦法的話,就換一種思路來解決。我們把linux環境下的jdk版本調到和eclipse所用的jdk版本兼容即可,這樣就需要重裝jdk了,較上述辦法略麻煩。本人建議用第一種較爲方便快捷!

執行jar包命令主類名問題

問題描述

把剛剛重寫過的wordcount程序打包並執行程序,卻出現如下圖執行異常,正確鍵入命令後卻發現系統沒有和你想象的套路出牌。
主類指定異常

原因一及解決辦法

在不同開發環境下,命令執行也略有差別,但一般情況就是圖片裏的命令操作,特殊情況就換一下命令即可,就是中間那個WordCount命令寫爲jar包項目文件名.包名.主類名。如下:
在這裏插入圖片描述
那麼,命令行輸入則爲:
在這裏插入圖片描述

原因二及解決辦法

倘若按照第一種辦法還是下面這種情況:原因二
那我就跟大家說說一個很重要的原因了,回到上面打包jar包步驟的第五步,在那裏假如我們指定了jar包程序的主類名時,那麼在命令行裏就無需再一次指定主類名了,所以主類名這個命令就可以省略掉了,如下圖:
在這裏插入圖片描述
這樣就執行成功了!!!那麼去查看輸出結果吧。

如有錯望請指正!
-----------END-------------
progammer:柘月十七

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章