/ / जावा कमांड - जावा, लिनेक्स, हडूप, अपाचे-सुअर का उपयोग करके सुअर जार चलाने में असमर्थ

जावा कमांड - जावा, लिनक्स, हडूप, अपाचे-पिग का उपयोग कर पिग जार चलाने में असमर्थ

मैं साधारण सुअर कोड की कोशिश कर रहा हूं, लेकिन इसकी अनुमति मुझे कुछ दे रही है यहाँ मेरा नमूना सुअर कोड है

import java.io.IOException;
import org.apache.pig.PigServer;
import org.apache.pig.ExecType;
import org.apache.hadoop.conf.Configuration;
public class PigTest{
public static void main(String[] args) {
try {
Configuration conf = new Configuration();
conf.set("hdp.version","2.3.0.0-2557");
//PigServer pigServer = new PigServer("mapreduce",conf);
PigServer pigServer = new PigServer(ExecType.MAPREDUCE, conf);
runIdQuery(pigServer, "myfile.txt");
}
catch(Exception e) {
}
}
public static void runIdQuery(PigServer pigServer, String inputFile) throws IOException {
pigServer.registerQuery("A = load "" + inputFile + "" using PigStorage(":");");
pigServer.registerQuery("B = foreach A generate $0 as id;");
pigServer.store("B", "idout");
}
}

मैंने अपना क्लासपाथ नीचे दिया

echo $CLASSPATH
.:/usr/hdp/2.3.0.0-2557/hadoop/client/*:/usr/hdp/2.3.0.0-2557/hadoop-hdfs/lib/*:/usr/hdp/2.3.0.0-2557/hadoop-mapreduce/lib/*:/usr/hdp/2.3.0.0-2557/hadoop-yarn/lib/*:/usr/hdp/2.3.0.0-2557/pig/lib/*:/usr/hdp/2.3.0.0-2557/hadoop/conf:/usr/hdp/2.3.0.0-2557/pig/pig-0.15.0.2.3.0.0-2557-core-h2.jar

जब मैं जावा कोड के साथ अपना कोड चला रहा हूं तो यह पूरी तरह से काम कर रहा है लेकिन जब मेरे कोड का जार बनाया गया और चलाने की कोशिश की जा रही है, तो यह मुझे अनुमति त्रुटि के नीचे दे रहा है।

 ****java -cp /usr/hdp/2.3.0.0-2557/hadoop/client/*;/usr/hdp/2.3.0.0-2557/hadoop-hdfs/lib/*;/usr/hdp/2.3.0.0-2557/hadoop-mapreduce/lib/*;/usr/hdp/2.3.0.0-2557/hadoop-yarn/lib/*;/usr/hdp/2.3.0.0-2557/pig/lib/*;/usr/hdp/2.3.0.0-2557/hadoop/conf;/usr/hdp/2.3.0.0-2557/pig/pig-0.15.0.2.3.0.0-2557-core-h2.jar -jar PigTest.jar****


Error: Could not find or load main class .usr.hdp.2.3.0.0-2557.hadoop.client.activation.jar
-bash: /usr/hdp/2.3.0.0-2557/hadoop-hdfs/lib/asm-3.2.jar: Permission denied
-bash: /usr/hdp/2.3.0.0-2557/hadoop-mapreduce/lib/aopalliance-1.0.jar: Permission denied
-bash: /usr/hdp/2.3.0.0-2557/hadoop-yarn/lib/activation-1.1.jar: Permission denied
-bash: /usr/hdp/2.3.0.0-2557/pig/lib/accumulo-core-1.5.0.jar: Permission denied
-bash: /usr/hdp/2.3.0.0-2557/hadoop/conf: is a directory
-bash: /usr/hdp/2.3.0.0-2557/pig/pig-0.15.0.2.3.0.0-2557-core-h2.jar: Permission denied

मैं इसे कैसे ठीक करूं?

उत्तर:

जवाब के लिए 0 № 1

निम्नलिखित कोशिश करें

  1. के बजाय /usr/hdp/2.3.0.0-2557/hadoop/client/* उपयोग /usr/hdp/2.3.0.0-2557/hadoop/client/*.jar (अंत में .jar देखें। सभी को * .jar के साथ बदलें।)
  2. सेमी-कोलोन (;) के बजाय कोलोन (:) के साथ प्रयास करें। लिनक्स पर पथ को अलग करने के लिए कोलन का उपयोग किया जाता है
  3. अगर चरण 1 ऊपर काम नहीं करता है तो * .jpg के बजाय व्यक्तिगत JAR को रास्ते में डालने का प्रयास करें