標籤:style blog http java color 使用
如果想通過eclipse來調試或者查看Cassandra的代碼,將其project匯入到eclipse之中不愧是個好選擇。下面將講述將2.0.8 版本匯入elcipse的過程。
該篇文章主要參考的官方文檔為:http://wiki.apache.org/cassandra/RunningCassandraInEclipse
為了快速存取,轉載到這裡:http://www.cnblogs.com/chang290/p/3837102.html
一、準備工作
1、去官網下載Cassandra源碼包:apache-cassandra-2.0.8-src.tar.gz。
2、解壓出來會有一個apache-cassandra-2.0.8-src目錄,將該目錄修改成自己想要的project名稱(注意這個目錄的名稱與project名稱一定要一致,因此在產生elipse檔案時會使用該絕對目錄名稱),比如我這裡叫做 cassandra-208-trunk。
3、進入到cassandra-208-trunk目錄,執行如下兩個命令:
ant buildant generate-eclipse-files
4、在ant build之中會需要下載一些檔案,因此該步驟需要一些時間。
二、建立java project
1、開啟eclipse建立一個java project,project name叫做 cassandra-208-trunk (注意這個名稱必須和目錄名一致)
2、點擊新建立的cassandra-208-trunk,滑鼠右鍵,進入Properties頁面
在左側邊欄選擇Java Build Path,右邊選擇Source選項卡,設定好Source folders 與 output folder,:
修改完成之後點擊OK,儲存。
3、回合組態
點擊新建立的cassandra-208-trunk,滑鼠右鍵,選擇 Run as -> Run Configurations
1)配置Main class,在Project框中選擇Cassandra-208-trunk,在Main class框中選擇 org.apache.cassandra.service.CassandraDaemon
2)配置啟動參數
在Program arguments框中輸入:
-Dcassandra.config=file:XXXXXX/cassandra-208-trunk/conf/cassandra.yaml ----其中的XXXXX為項目所在的路徑
-Dcassandra-foreground
-ea -Xmx2G ----配置堆記憶體,根據實際配置
-Dlog4j.configuration=file:XXXXXX/cassandra-208-trunk/conf/log4j-server.properties ----其中的XXXXX為項目所在的路徑
在VM arguments之中輸入如下內容:
-Djava.rmi.server.hostname=127.0.0.1 ----為運行nodetool使用
-Dcom.sun.management.jmxremote.port=7199 ----為運行nodetool使用的預設連接埠
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
三、運行測試
完成上述的配置之後,就可以啟動項目了,輸出如下:
14/07/11 09:59:00 INFO db.Memtable: Completed flushing build/test/cassandra/data/system/local/system-local-jb-9-Data.db (110 bytes) for commitlog position ReplayPosition(segmentId=1405043940005, position=174117)14/07/11 09:59:00 INFO service.StorageService: Node /127.0.0.1 state jump to normal14/07/11 09:59:00 INFO compaction.CompactionTask: Compacted 4 sstables to [build/test/cassandra/data/system/local/system-local-jb-10,]. 1,079 bytes to 531 (~49% of original) in 16ms = 0.031650MB/s. 4 total partitions merged to 1. Partition merge counts were {4:1, }
然後進入到項目目錄 cassandra-208-trunk/bin 運行 ./nodetool status 輸出如下:
Status=Up/Down|/ State=Normal/Leaving/Joining/Moving-- Address Load Owns (effective) Host ID Token RackUN 127.0.0.1 98.02 KB 100.0% 53e17e1a-5785-43dc-b724-dd3188f1b822 43e797990015319dfe8cd742dbbe788d rack1