Kafka源码编译(kafka0.8.2.2)并用IDEA(2018.3)运行

2023-12-17 08:32

本文主要是介绍Kafka源码编译(kafka0.8.2.2)并用IDEA(2018.3)运行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一: 准备工作

       安装JDK(1.8或以上)、Scala(2.11.x)、Gradle

    可以参考博客 https://blog.csdn.net/u013256816/article/details/78533725

  本机安装如下:

二:下载kafka源码解压

三:在解压目录下执行gradle idea

四:编译成功

     产生如下三个文件:

五:如果编译失败,报错如下

gradle idea  
Starting a Gradle Daemon (subsequent builds will be faster)  
Building project 'core' with Scala version 2.10.4  FAILURE: Build failed with an exception.  * Where:  
Build file '/opt/bigdata/kafka/kafka-0.8.2.2-src/build.gradle' line: 230  * What went wrong:  
A problem occurred evaluating root project 'kafka-0.8.2.2-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  

       解决办法:

         在build.gradle文件中添加如下(=号前后最好不带空格):

ScalaCompileOptions.metaClass.daemonServer=true
ScalaCompileOptions.metaClass.fork=true
ScalaCompileOptions.metaClass.useAnt=false
ScalaCompileOptions.metaClass.useCompileDaemon=false

六:IDEA打开Kafka源码

      IDEA必选先装Scala插件(在setting/plugins下搜索安装,或离线安装)

     1.选择build.gradle文件打开

2.建立索引,点击导入

点击Import Gradle project之后,再次去掉对勾,点击OK

七:运行Kafka源码

       1.将config目录下的log4j.properties拷贝到core/src/main/scala目录下

如果拷贝到此目录仍启动仍无效,可在main下新建resources目录。将log4j.properties拷贝到resources下。

2.设置server.properties

   设置broker.id、port、log.dirs、zookeeper.connect

特别要说一下的是:log.dirs

由于是本地运行,kafka运行的log会在默认路径下,不方便查看,因此我设置了两个目录用于存储kafka运行过程中产生的两不同的日志

在server.properties中log.dirs设置appLog

在拷贝后的core/src/main/scala下的log4j.properties中添加:

kafka.logs.dir=F:\\linuxLocalRun\\kafka\\kafka_2.11-2.0.1\\log\\broker1\\runLog

3.配置Application

选择core/src/main/scala/kafka/Kafka.scala作为Main Class

八:启动zookeeper

双击zkServer.cmd   本地运行zookeeper

九:运行Kafka源码

启动成功。并成为Leaders

 

这篇关于Kafka源码编译(kafka0.8.2.2)并用IDEA(2018.3)运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/503749

相关文章

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

IDEA Maven提示:未解析的依赖项的问题及解决

《IDEAMaven提示:未解析的依赖项的问题及解决》:本文主要介绍IDEAMaven提示:未解析的依赖项的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录IDEA Maven提示:未解析的依编程赖项例如总结IDEA Maven提示:未解析的依赖项例如

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

IDEA如何实现远程断点调试jar包

《IDEA如何实现远程断点调试jar包》:本文主要介绍IDEA如何实现远程断点调试jar包的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录问题步骤总结问题以jar包的形式运行Spring Boot项目时报错,但是在IDEA开发环境javascript下编译

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

IDEA中Maven Dependencies出现红色波浪线的原因及解决方法

《IDEA中MavenDependencies出现红色波浪线的原因及解决方法》在使用IntelliJIDEA开发Java项目时,尤其是基于Maven的项目,您可能会遇到MavenDependenci... 目录一、问题概述二、解决步骤2.1 检查 Maven 配置2.2 更新 Maven 项目2.3 清理本