java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset. -see https://wiki.apache.org/hadoop/WindowsProblems at org.apache.hadoop.util.Shell.fileNotFoundException(Shell.java:528) ~[hadoop-common-2.8.4.jar:na] at org.apache.hadoop.util.Shell.getHadoopHomeDir(Shell.java:549) ~[hadoop-common-2.8.4.jar:na] at org.apache.hadoop.util.Shell.getQualifiedBin(Shell.java:572) ~[hadoop-common-2.8.4.jar:na] na org.apache.hadoop.util.Shell. <clinit>(Shell.java:669) ~[hadoop-common-2.8.4.jar:na] na org.apache.hadoop.util.StringUtils. <clinit>(StringUtils.java:79) [hadoop-common-2.8.4.jar:na] na org.apache.hadoop.conf.Configuration.getBoolean(Configuration.java:1555) [hadoop-common-2.8.4.jar:na] at org.apache.hadoop.hbase.HBaseConfiguration.checkDefaultsVersion(HBaseConfiguration.java:66) [hbase-common-2.0.0.jar:2.0.0] at org.apache.hadoop.hbase.HBaseConfiguration.addHbaseResources(HBaseConfiguration.java:80) [hbase-common-2.0.0.jar:2.0.0] na org.apache.hadoop.hbase.HBaseConfiguration.create(HBaseConfiguration.java:94) [hbase-common-2.0.0.jar:2.0.0] at org.apache.phoenix.query.ConfigurationFactory$ConfigurationFactoryImpl$1.call(ConfigurationFactory.java:49) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0-HBase-2.0] at org.apache.phoenix.query.ConfigurationFactory$ConfigurationFactoryImpl$1.call(ConfigurationFactory.java:46) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0-HBase-2.0] na org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:76) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0-HBase-2.0] at org.apache.phoenix.util.PhoenixContextExecutor.callWithoutPropagation(PhoenixContextExecutor.java:91) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0-HBase-2.0] at org.apache.phoenix.query.ConfigurationFactory$ConfigurationImpl.getConfiguration(ConfigurationFactory.java:46) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0- HBase-2.0] pri org.apache.phoenix.jdbc.PhoenixDriver.initializeConnectionCache(PhoenixDriver.java:151) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0-HBase-2.0] na org.apache.phoenix.jdbc.PhoenixDriver. <init>(PhoenixDriver.java:143) [phoenix-core-5.0.0-HBase-2.0.jar:5.0.0-HBase-2.0]
Strežniška različica Hadoop je naslednja:
[root@master ~]# Hadoop različica Hadoop 2.8.3 Subverzijahttps://git-wip-us.apache.org/repos/asf/hadoop.git-r b3fe56402d908019d99af1f1f4fc65cb1d1436a2 Sestavil jdu dne 2017-12-05T03:43Z Prevedeno s protoc 2.5.0 Iz izvora s kontrolno vsoto 9ff4856d824e983fa510d3f843e3f19d Ta ukaz je bil izveden z /home/dzkj/apache/hadoop-2.8.3/share/hadoop/common/hadoop-common-2.8.3.jar
Vedno sem mislil, da je moja lokalna ideja klic na oddaljeni Hadoop, zato mi ni treba namestiti Hadoopa v lokalni operacijski sistem Windows. Ko sem videl ta HADOOP_HOME, nisem razumel, ali moram še vedno namestiti hadoop lokalno????
Odgovor: Hadoop vam ni treba namestiti, morate pa nastaviti spremenljivko %HADOOP_HOME%.
Rešitev:
Prenesi ustrezne winutile glede na različico strežnika
Uvod v Winutils: Windows binarne datoteke za Hadoop različice, ki so zgrajene neposredno iz istega git commita, ki je bil uporabljen za ustvarjanje uradne ASF različice; So izposojeni in zgrajeni na Windows VM, ki je namenjen testiranju Hadoop/YARN aplikacij na Windows. Ni sistem za vsakodnevno uporabo, zato je izoliran od varnostnih napadov na disk/e-pošto.
Povezava:https://github.com/steveloughran/winutils
Ker je moja Hadoop različica 2.8.3, je naslov za prenos naslednji:https://github.com/steveloughran ... er/hadoop-2.8.3/bin
winutils.2.8.3.bin.zip
(1.88 MB, Število prenosov: 15)
Nastavite okoljsko spremenljivko %HADOOP_HOME%, da kaže na mapo nad mapo BIN, ki vsebuje WINUTILS.EXE. Kot je prikazano spodaj:
Zaprete idejo, ponovno odprite projekt z idejo, začnite projekt in izjema izgine.
Referenčne povezave:https://wiki.apache.org/hadoop/WindowsProblems
|