设为首页 收藏本站
查看: 1186|回复: 0

[经验分享] windows下kafka源码阅读环境搭建

[复制链接]

尚未签到

发表于 2017-11-7 08:55:22 | 显示全部楼层 |阅读模式
  • 工具准备:jdk1.8,scala-2.11.11,gradle-3.1,zookeeper-3.4.5,kafka-0.10.0.1-src.tgz, kafka_2.11-0.10.0.1.tgz
  • 安装jdk
  • 安装scala
  • 搭建zookeeper
  • kafka源码构建
    解压kafka-0.10.0.1-src.tgz,命令行进行kafka-0.10.0.1-src,执行gradle idea

    e7b90ed54a50810c84f71b7b03bc4dbc.png-wh_500x0-wm_3-wmp_4-s_3555752997.png

注:
1)gradle idea,用国外的库构建的下载速度很慢,在进入项目里面,找到build.gradle文件的修改库为阿里镜像库
buildscript {
  repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    }
  apply from: file('gradle/buildscript.gradle'), to: buildscript

  dependencies {
    // For Apache Rat plugin to ignore non-Git files
    classpath "org.ajoberstar:grgit:1.5.0"
    classpath 'com.github.ben-manes:gradle-versions-plugin:0.12.0'
    classpath 'org.scoverage:gradle-scoverage:2.0.1'
  }
}

allprojects {
  apply plugin: 'idea'
  apply plugin: 'eclipse'
  apply plugin: "jacoco"

  allprojects {
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    }
}
2)执行gradle idea时,报错

* What went wrong:  
A problem occurred evaluating root project 'kafka-0.10.0.1-src'.  
> Failed to apply plugin [class 'org.gradle.api.plugins.scala.ScalaBasePlugin']  
   > No such property: useAnt for class: org.gradle.api.tasks.scala.ScalaCompileOptions  

* Try:  
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.  

BUILD FAILED  

解决方法:打开kafka-0.10.0.1-src目录下build.gradle文件
添加如下行
[plain] view plain copy
ScalaCompileOptions.metaClass.daemonServer = true  
ScalaCompileOptions.metaClass.fork = true  
ScalaCompileOptions.metaClass.useAnt = false  
ScalaCompileOptions.metaClass.useCompileDaemon = false

7.用intellij idea打开kafka-0.10.0.1-src
2e54b08ee3d7b2412c280f36f31cd0bd.png-wh_500x0-wm_3-wmp_4-s_2374849679.png
8.复制log4j.properties文件放到core模块的src/main/scala路径下,这样才能正常的显示日志
2ed43d098b7cebdf2faa21876ad0dac4.png-wh_500x0-wm_3-wmp_4-s_3605728480.png
9.增加scala-sdk
0c3b177e184622b505534f8879c596fc.png-wh_500x0-wm_3-wmp_4-s_88991643.png
10.配置启动参数
12e18887649e11e1f9db69d044850dc6.png-wh_500x0-wm_3-wmp_4-s_1139839183.png
11.启动项目
ce3716f9bb285fd7a644b66b2441c228.png-wh_500x0-wm_3-wmp_4-s_475031007.png
12.验证
解压kafka_2.11-0.10.0.1.tgz文件,命令行进入bin/windows
1)创建topic
C:\webserver\kafka_2.11-0.10.0.1\bin\windows>kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --
partitions 1 --topic testMsg
Created topic "testMsg".

控制台日志如下:
38fb278207d888d2f482d0fced205b5d.png-wh_500x0-wm_3-wmp_4-s_3427900052.png
2)执行生产者命令,产生消息:
d95d2efbc0fb9428444026348165dd22.png-wh_500x0-wm_3-wmp_4-s_3822918000.png
3)执行消费者命令,消费消息:
c81d90a057bfd0c7c3221db7726f6f21.png-wh_500x0-wm_3-wmp_4-s_2851271549.png
问题:
ERROR Processor got uncaught exception. (kafka.network.Processor)
java.nio.BufferUnderflowException
解决方案:
这是客户端的jar包和集群的版本号在小版本不一致导致,保持版本号一致即可。
scala-2.11.11,kafka-0.10.0.1-src.tgz, kafka_2.11-0.10.0.1.tgz


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-406588-1-1.html 上篇帖子: Flume+Kafka+Zookeeper搭建大数据日志采集框架 下篇帖子: Linux下单机安装部署kafka及代码实现
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表