2014-11-02 10 views
6

मैं वर्डकाउंट उदाहरण चलाने के लिए चाहता हूं।एक वैध जार नहीं जब हडोप नौकरी चल रहा है

ग्रहण में यह सही ढंग से चलाया जाता है। आउटपुट फ़ोल्डर में आउटपुट फ़ाइल मौजूद है।

मैं शब्दसंख्या का एक जार फ़ाइल बना दिया है और आदेश के माध्यम से उसे चलाना चाहते हैं

hadoop jar WordCount.jar /Projects/input /Projects/output 

यह मेरे

Not a valid JAR: /Projects/WordCount.jar 

hdfs dfs -ls /Projects

Found 3 items 
-rw-r--r-- 1 hduser supergroup 3418 2014-11-02 15:38 /Projects/WordCount.jar 
drwxr-xr-x - hduser supergroup 0 2014-11-02 14:13 /Projects/input 
drwxr-xr-x - hduser supergroup 0 2014-11-02 14:16 /Projects/output 

का परिणाम त्रुटि देता है यह मुझे एक ही देता है इस पर त्रुटि भी

hadoop jar /Projects/WordCount.jar wordPackage.WordCount /Projects/input /Projects/output 

Not a valid JAR: /Projects/WordCount.jar 

इस त्रुटि को हल करने के लिए कैसे करें।

मैं चला TVF आदेश यह इस उत्पादन

jar -tvf /home/hduser/Desktop/Files/WordCount.jar 

    60 Sun Nov 02 16:10:10 PKT 2014 META-INF/MANIFEST.MF 
1895 Sun Nov 02 14:02:38 PKT 2014 wordPackage/WordCount.class 
1295 Sun Nov 02 14:02:38 PKT 2014 wordPackage/WordCount.java 
2388 Sun Nov 02 14:02:06 PKT 2014 wordPackage/WordReducer.class 
707 Sun Nov 02 14:02:06 PKT 2014 wordPackage/WordReducer.java 
2203 Sun Nov 02 14:02:08 PKT 2014 wordPackage/WordMapper.class 
713 Sun Nov 02 14:02:06 PKT 2014 wordPackage/WordMapper.java 
16424 Sun Nov 02 13:50:00 PKT 2014 .classpath 
420 Sun Nov 02 13:50:00 PKT 2014 .project 
+0

मुझे लगता है कि आप MainClass फ़ाइल जो $ bin/Hadoop जार WordCount.jar की तरह कुछ होना चाहिए आपूर्ति करने के लिए याद किया org.myorg.WordCount/परियोजनाओं/इनपुट/परियोजनाओं/आउटपुट – Satya

+0

मैंने मुख्य वर्ग की आपूर्ति की है। मैंने संपादित किया है प्रश्न आप इसमें देख सकते हैं। –

+0

हैडोप का संस्करण जो आप संकलन और जार बनाने के लिए उपयोग करते हैं, वही संस्करण होना चाहिए जहां आप हडूप नौकरी चलाने के लिए चाहते हैं (आदेश का प्रयास करें: "हडूप संस्करण")। –

उत्तर

7

आप HDFS में जार जब Hadoop आदेश का उपयोग कर एक ही क्रियान्वित नहीं रख सकते हैं देता है, जार स्थानीय पथ

जार तो में उपलब्ध होना चाहिए runnable नहीं जार runnable निम्नलिखित

इस्तेमाल किया जा सकता है, तो निम्नलिखित (package.mainclass निर्दिष्ट करने की आवश्यकता)

hadoop jar /home/hduser/Desktop/Files/WordCount.jar wordPackage.WordCount /Projects/input /Projects/output 

कोशिश है

hadoop jar /home/hduser/Desktop/Files/WordCount.jar /Projects/input /Projects/output 

समस्या अभी भी बनी रहती है, आप ग्रहण में इस जार (WordCount.jar) के पुनर्निर्माण की जरूरत फिर

+1

हां, जार एचडीएफएस के अंदर नहीं होना चाहिए। –

-1

मैं एक ही मुद्दे का सामना करना पड़ा। लेकिन मेरे मामले में मैंने जो किया था, मैंने जावा कोड लिखा था, जिसमें 1.x पुस्तकालयों का उल्लेख किया गया था और 2.x का उपयोग करके इसे निष्पादित करने का प्रयास किया था। प्रारंभ में, मुझे टर्मिनल में एक ही त्रुटि मिली। तब मैंने उस पथ पर नेविगेट करने की कोशिश की जहां मेरी जार फ़ाइल थी। इसने काम कर दिया।

हो सकता है कि आप वास्तव में निम्नलिखित की कोशिश कर सकते हैं: (जार फ़ाइलों पथ के लिए नेविगेट करने के बाद)

संबंधित मुद्दे