java程式碼的MapReduce打包成jar 報錯: JAVA程式執行時出現:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsEx
以前的學習筆記,整理一下:
java程式碼的MapReduce打包成jar
報錯:
JAVA程式執行時出現:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at PrintWhat.main(PrintWhat.java:14)?
改正:
命令列輸入時沒有輸入引數。
命令列輸入時沒有輸入引數。------------你在main方法中的這句話:int month=Integer.getInteger(args[0]);使得陣列args[]被用到了( args[0] ),所以main方法執行時是需要一組String 型別的引數的,為什麼? 這個main方法在被呼叫時其實是需要輸入一個String型別的陣列的 ↓public static void main (String[] args) {) ------------如果是在命令列編譯執行的,需要如此形式才可執行:java PrintWhat 12,23,32只需要在程式名後面空格,跟上若干個引數便可;如果是在Eclipse下編寫的,這麼做:對著PrintWhat.java 右擊 > Run as > Run configurations,在開啟的視窗,選擇"Arguments"標籤,輸入一組引數,之後點選"Run"即可
com.packt.ch5.advjoin.redis.MapSideJoinRedis
明天需要注意的問題:
1,啟動hadoop叢集
2,開啟redis
3,注意確定資料nobots_ip_country_tsv.txt裡面。
4,看書上的步驟
5記得看書上的結果 看是不是程式碼的問題
6回覆汪版本的問題不需要改正,可以使用即可。
在程式中出現找不到檔案的錯誤但是檔案又是真實的存在的,可能是因為檔案的許可權的問題。需要修改檔案的許可權。