Cassandra杂记11-在Eclipse中开发Cassandra
配置环境
1 安装jdk6,ant。
2 安装Eclipse3.5
3 在Eclipse中安装http://subclipse.tigris.org/update_1.6.x
在Eclipse的菜单选择:Help –> Install New Software
接下来,就可以安装subclipse: Add –> 输入名称和地址http://subclipse.tigris.org/update_1.6.x ->勾选所有需要安装的选择
最好点击next,安装提示的要求一步一步操作。最后等待subclipse安装完成后重启Eclipse。
下载Cassandra源码
在Eclipse中新建一个svn项目
选择:创建新的资源库位置
获取svn:https://svn.apache.org/repos/asf/cassandra/tags/cassandra-0.6.2/
按照如下选择
然后根据提示创建一个Java Project,svn检出操作完成后,我们就可以看到刚刚创建的项目了
这样Cassandra的源代码就下载完毕了。
编译Cassandra
假设我们下载的Cassandra源代码的位置在D:\workspace\cassandra-0.6.2,那么我们使用命令行工具在这个目录下执行ant的编译操作。
如果编译成功,提示如下:
可以看到,执行编译的同时,也生成了thrift,avro和antlr的java源文件。
在Eclipse中编辑Cassandra源码
源代码虽然可以编辑成功,但是我们还是无法利用Cassandra对源代码进行方便的修改。
接下来,要一步一步配置Eclipse,使其可以方便地编辑Cassandra源码。
首先,将D:\workspace\cassandra-0.6.2\lib目录下的所有jar包添加到项目的Build Path中。
然后,编辑Src目录的属性,默认的设置为
将默认的目录删除,然后添加如下Src目录
添加完成之后,目录结构如下
按照正常的流程来说,我们对Eclipse的配置就算完成了,可以很方便地在Eclipse中编辑Cassandra源码了。
但是Eclipse还是有一些小Bug可能会影响到正常的功能,比如我遇到的这个情况
大家可以看到,GarbageCollectorMXBean其实是jdk中的一个类,但是Eclipse提示找不到定义。处理的办法如下
打开项目的Build Path,先移除JRE System Library
然后在将之前移除JRE System Library的添加回来。
最后在刷新整个项目,错误提示的问题就解决了。
运行单元测试
我们可以将单元测试的代码也添加到Eclipse中。
步骤非常简单:
1 添加JUnit4的jar包
2 添加test目录下的测试代码到Src中。
添加成功后项目的列表如下
我们可以直接在test中运行已有的单元测试。
打包发布
当我们完成对Cassandra源码的修改以后,可以将修改后的版本打包发布出来。
使用ant的命令行:ant release
执行完毕以后,我们可以在D:\workspace\cassandra-0.6.2\build目录中看到打包后的文件
这样,我们就可以使用修改后的Cassandra了。