Kafka源码调试环境搭建
2016-07-04 18:34
603 查看
写在前面
用到了kafka, 于是借机会看看代码, 顺便复习下Scala, 看到一半, 换电脑了, 搭环境有搭了半天, 所以记录下. 注意这里是0.8.2.2版本, 因为公司用的就是这个版本.依赖的软件
GitScalaIDE(4.4.1)
Gradle
ZooKeeper
环境搭建
下载源码并切换分支到0.8.2.2版本:git clone git@github.com:apache/kafka.git git checkout -b 0.8.2.2 0.8.2.2
安装配置Gradle
下载解压Gradle压缩包, 并配置GRADLE_HOME和PATH, (可以通过GRADLE_USER_HOME指定jar包下载地址)
添加全局配置文件(GRADLE_HOME/init.d/init.gradle), 优先使用本地Maven仓库.
allprojects { repositories { mavenLocal() maven{ url 'your nexus'} mavenCentral() } }
安装ZooKeeper(略)
将Kafka源码转换为eclipse工程
#切换到kafka代码目录 gradle ./gradlew eclipse
将Kafka工程导入到ScalaIDE中.
先导入kafka/clients项目(core项目依赖clients)
再导入kafka/core项目
clients是Java代码不用配置.
core是Scala项目, 因为0.8.2比较老, 所以要设置Scala编译级别为2.10(项目属性->Scala Compiler->勾上Use Project Settings->Scala Installation 选择2.10)
然后clean下, 反正我是挺顺利的~~~
运行源码
启动ZooKeeper主类在
/core/src/main/scala/kafka/Kafka.scala
修改Kafka.scala文件设置kafka使用的配置文件, 和日志文件配置(通过手动设置main方法参数, 和系统参数来实现)
def main(args: Array[String]): Unit = { val args = Array("""C:\projects\kafka08\kafka\core\conf\server.properties""") System.setProperty("log4j.configuration", """file:C:\projects\kafka08\kafka\core\conf\log4j.properties""") //下面的不修改 }
kafka是通过脚本来停止的, 所以这里debug, 为了避免每次都杀进程, 所以修改下, 这样可以通过控制台回车就可以正常关闭kafka了.
//注释掉awaitShutdown方法调用, 修改为in.read(), 然后调用shutdown def main(args: Array[String]): Unit = { kafkaServerStartable.startup //kafkaServerStartable.awaitShutdown System.in.read() kafkaServerStartable.shutdown() }
好了, 现在可以右键 Run As Scala Application运行了
相关文章推荐
- 神器SystemTap
- Kafka 之 中级
- Windows下Scala环境搭建
- MyEclipse Web Project转Eclipse Dynamic Web Project
- Windows Clang开发环境备忘
- Python 七步捉虫法
- Lua编程示例(一):select、debug、可变参数、table操作、error
- C#中的两种debug方法介绍
- 傻瓜式用Eclipse连接MySQL数据库
- 用Ruby实现一个单元测试框架的教程
- Eclipse引入jquery报错如何解决
- 让Flex Builder 3.0与Eclipse3.4整合起来
- js调试工具 Javascript Debug Toolkit 2.0.0版本发布
- Eclipse配置Javascript开发环境图文教程
- 使用zend studio for eclipse不能激活代码提示功能的解决办法
- Windows7下安装Scala 2.9.2教程
- 图解Eclipse j2ee开发环境的搭建过程
- 两种Eclipse部署动态web项目方法
- ext for eclipse插件安装方法
- php debug 安装技巧