/ / Classpath na použitie pre MapR / Hadoop / Hive - java, hadoop, mapr

Použiť triedu na MapR / Hadoop / Hive - java, hadoop, mapr

Snažím sa zostaviť nejaký javový kód pre hadoopa potrebujú vedieť, akú triedu cesty potrebujem špecifikovať. Pre clouddera to používam nižšie, ale čo mám použiť pre inštaláciu MapR? Prekvapivo som mohol nájsť iba spôsob, ako nastaviť classpath v google, nie to, na čo ju nastavím.

javac -classpath "/opt/cloudera/parcels/CDH-4.6.0-1.cdh4.6.0.p0.26/lib/hadoop/client/*" mr.java -d mr

odpovede:

0 pre odpoveď č. 1

Odpoveď bola zistená pokusom a omylom. Zvláštne Google je veľmi mlčať a všetky knihy a príklady, ktoré som si prečítal, sa zdajú byť presvedčivé, že to je príliš zrejmé, aby som mohol obťažovať tlač.

mkdir MyClass
javac -classpath "/opt/mapr/hadoop/hadoop-0.20.2/lib/*" MyClass.java -d MyClass
jar -cvf MyClass.jar -C MyClass .

Okrem toho, ak chcete podskupiny knižníc, napr. Pre zostavenie úľa UDF:

javac -classpath "/opt/mapr/hadoop/hadoop-0.20.2/lib/*:/opt/mapr/hive/hive-0.12/lib/*" MyClass.java -d MyClass

EDIT: Jedna vec, ktorú by som pridal, je uistiť sa, že zadáte úvodzovky okolo cesty, inak linux rozbalí na príkazovom riadku, čo nie je to, čo chcete. * V ceste musí byť odovzdaný do java ako je.