使用IntelliJ IDEA搭建kafka源碼環境時遇到Output path錯誤解決辦法


 kafka源碼環境搭建好之后,需要在IntelliJ IDEA開發工具中以debug方式啟動kafka服務器來測試消息的生產和消費。

但是在啟動kafka.Kafka類中的main方法(也就是運行 kafka-0.10.0.1-src\core\src\main\scala\kafka\Kafka.scala 類中的main方法)的時候遇到一個錯誤,錯誤信息的截圖如下:

 

Error:scalac: Output path D:\kafka-0.10.0.1-src\build is shared between: 
Module 'kafka-0.10.0.1-src' production, Module 'kafka-0.10.0.1-src' tests Please configure separate output paths to proceed with the compilation. TIP: you can use Project Artifacts to combine compiled classes if needed.

 

大概意思是說kafka-0.10.0.1-src這個模塊的編譯輸出目錄有問題,需要為production和tests指定不同的編譯輸出目錄。

 

解決方案:

1.首先指定project的編譯輸出目錄:

 

2.然后修改kafka-0.10.0.1-src模塊的編譯輸出目錄:

 

再次在idea中啟動kafka服務器,會看到scalac開始編譯:

 

 

配置kafka服務器(添加一個application,main class選擇kafka.Kafka這個scala對象,因為它里面有一個main方法,啟動這個main方法就相當於啟動了kafka服務器)啟動參數:

 

配置生產者(ConsoleProducer,它里面也有一個main方法,啟動該main方法就相當於啟動了一個kafka生產者)啟動參數(在Program arguments中可以給生產者傳遞啟動參數):

 

配置消費者(ConsoleConsumer,它里面也有一個main方法,啟動這個main方法就相當於啟動了一個消費者)啟動參數(在Program arguments中可以給消費者傳遞啟動參數):

 

以debug方法啟動kafka服務器成功:

 

以debug方式啟動生產者成功,可以在控制台輸入消息,並回車,就可以向kafka服務器發送消息:

 

同樣以debug模式啟動消費者,在控制台可以看到有消息被消費:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM