java -cp和java -jar都是运行jar包,区别在于前者需要自行指定主类,后者必须jar包中指定了主类
用maven导出的包中,如果没有在pom文件中将依赖包打进去,是没有依赖包。
1.打包时指定了主类,可以直接用java -jar xxx.jar。
2.打包时没有指定主类,可以用java -cp xxx.jar 主类名称(绝对路径)。
至于MR提交到yarn上,代码块如下
${_HADOOP_BIN} jar \
jar包名 \
主类名 \
-Dmapreduce.reduce.java.opts="-Xmx3192m" \
-Dmapreduce.output.fileoutputformat.compress.codec="com.hadoop.compression.lzo.LzoCodec" \
-Dmapreduce.map.output.compress.codec="com.hadoop.compression.lzo.LzoCodec" \
-Dmapreduce.job.queuename=${_HDP_QUEUE_OFFLINE} \
运行参数(输入路径、输出路径、其他参数) > $XXX.log 2>&1