linux系統利用eclipse單步調試hive__linux

來源:互聯網
上載者:User

1.       用svn 下載hive源碼

           將源碼存放在hive_trunk目錄 下。

          # svn co http://svn.apache.org/repos/asf/hive/trunk/ hive_trunk1

          

2.    產生 eclipse項目

        在hive_trunk1目錄下,執行ant eclipse-files命令 

       #ant eclipse-files

       產生可匯入 的.project專案檔    

3     載入hive_trunk1項目。

        開啟eclipse開發環境,file->import..開啟“匯入”對話方塊,選擇root directory為hive_trunk1目錄  。

     

      在Project  Explorer 視窗可以看到 已被成功匯入。

   繼續在hive_trunk目錄下執行 ant package命令

    #ant package

   耗時很多,我用了22分鐘。

    會發現新產生/opt/hive_trunk1/build/dist/lib目錄 下會有很多 jar包。

  

   hive_trunk項目,菜單 run-> debug configurations 對話方塊中,雙擊Java Application,做下圖所示的定義。

 


單擊進入classpath選項卡,對於classpath選項卡,需要

擊“ Add External JARs”按鈕,將“hadoop-0.20.0-core.jar" ,"hive_trunk1/build/dist/lib”下的所有jar包添加到classpath中。

接下來點擊“Advanced”按鈕,將Hive的hive_trunk1/build/dist/conf目錄添加進來


        在工程上右鍵-->properties

        選擇builders,去掉java builder前面的√

    點擊new按鈕,雙擊【Ant Builder】選擇Ant的編譯模式

        Name的地方寫上hive_ant_Builder

        在buildfile這裡點擊【browser file system】,瀏覽設定為/hive_trunk1/build.xml

開啟 Targets選項卡,點擊Manual Build的Set Targets按鈕 做下圖配置。




        點擊apply進行應用配置

        點擊ok按鈕將hive_ant_builder進行up上移

      
         


在hive_trunk1/build/dist/conf目錄添加

hive-site.xml .

hive-site.xml是將 hive-default.xml.template複製過來後並重新命名的副本


對hive-site.xml做些修改,下面是配置hive 中繼資料庫的三種方式,預設的嵌入式derby資料庫、網路模式derby資料庫和Mysql資料庫。

<configuration><property>  <name>javax.jdo.option.ConnectionURL</name>  <!--<value>jdbc:derby:;databaseName=metastore_db;create=true</value>--> <!--<value>jdbc:derby://localhost:1527/db_hive;create=true</value> --> <value>jdbc:mysql://192.168.251.19:3306/mydb_hive?useUnicode=true& characterEncoding=UTF-8&createDatabaseIfNotExist=true</value>  <description>JDBC connect string for a JDBC metastore</description></property><property>  <name>javax.jdo.option.ConnectionDriverName</name>  <!-- <value>org.apache.derby.jdbc.EmbeddedDriver</value> -->   <!-- <value>org.apache.derby.jdbc.ClientDriver</value> -->  <value>com.mysql.jdbc.Driver</value>   <description>Driver class name for a JDBC metastore</description></property><property>  <name>javax.jdo.option.ConnectionUserName</name>  <value>mysql</value>  <description>username to use against metastore database</description></property><property>  <name>javax.jdo.option.ConnectionPassword</name>  <value>mysql</value>  <description>password to use against metastore database</description></property></configuration>

我對三種串連方式都做了測試,這裡選擇Mysql資料庫。

使用Mysql資料庫還需要將Mysql的JDBC匯入到classpath中。

這裡使用mysql-connector-java-5.1.24-bin.jar 。

對於網格模式的derby需要用到derby的l的JDBC 串連包derbyclient.jar,

derby的使用可以參考http://blog.csdn.net/duguduchong/article/details/8689822

 
4 .調試hive

   單擊菜單【run】下面的【debug】就可以單步調試hive了。 

 

在此截圖之前我建立了3個hive表,在截圖中console 視窗裡我通過  show tables命令即可查看到,以證明上述配置過程的正確性。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.