linux下的安裝包裡面的bin目錄下存放這軟件的可執行文件,如hadoop的start-all.sh和hive中的hive等。當安裝軟件時,在相應的~/.bashrc(個別用戶下)或/etc/profile(用於所有用戶)中設置了軟件的安裝路徑後如:export HIVE_HOME=....;然後可以在相應的bin/目錄下運行科執行文件。(必須在bin目錄下才能執行)。
若果在相應的~/.bashrc(個別用戶下)或/etc/profile(用於所有用戶)下設置了PATH,如PATH=$PATH:$HIVE_HOME/bin 則此時可以在任意的目錄下運行相應的可執行文件。
而CLASSPATH環境變量是我們在運行程序是可能要用到其他人寫的一些類,則此時CLASSPATH就是讓編譯器直到去哪裡去找這些類。
或者export CLASSPATH=.:.:$CLASSPATH:$HIVE_HOME/lib/*-*.jar
注意:對於jar包,在classpath中需要跟上完整地文件路徑,而不能僅僅跟一個目錄。第一個路徑的點“.”,代表當前目錄,這樣當我們運行java AClass
的時候,系統就會先在當前目錄尋找AClass文件了。