idea 本地啓動 zookeeper
2022/1/25 6:04:37
本文主要是介绍idea 本地啓動 zookeeper,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
從github download zookeeper 源碼, 地址here。
本文章使用過程皆使用maven作爲管理項目依賴工具。
使用idea 打開zookeeper項目下的pom.xml文件,作爲project打開。
加載完索引后,設置項目模塊setting,jdk使用的是1.8,設置完成后,reimport依賴。
準備javacc工具,關於javacc,具體請訪問javacc 官網。根據Download & Installation指引按照,配置好系統環境變量。
打開zookeeper-jute模塊下的org.apache.jute.compiler.generated.Rcc.jj,該文件為javacc文件
直接在idea運行,或者在cmd命令窗口(運行命令與java編譯命令類似)下編譯運行,以此生成後續轉換jute文件需要的java文件。
之後運行org.apache.jute.compiler.generated.Rcc.java,在運行參數設置zookeeper-jute文件(相對路徑為zookeeper\zookeeper-jute\src\main\resources\zookeeper.jute)
zookeeper-jute文件為zookeeper client與server傳輸序列化與反序列化使用。運行該文件后,會生成用於傳輸的java文件,位於項目根路徑(也就是zookeeper目錄下)。之後通過編譯zookeeper-jute,將在target/classes目錄下生成對應的java文件。
之後複製zookeeper/conf目錄下的zoo.sample.cfg和log4j.properties到zookeeper-server/target/
最後通過configuration運行配置,運行主類為org.apache.zookeeper.server.quorum.QuorumPeerMain,配置運行參數,將zoo.cfg配置文件作爲參數傳入運行主類,modify options添加依賴,將provided scope的依賴也包括在内,最後運行,在idea啓動zookeeper server端
總結:
中間過程遇到不少報錯
1.download項目並導入后,項目很多地方都是報紅,ide編譯不通過,根據項目文件描述並原本zookeeper打好的包發現,zookeeper用於傳輸的Java文件都不存在,看了zookeeper-jute項目的package.html文件,瞭解到zookeeper使用jute工具生成傳輸的文件。最後根據這些蛛絲馬跡找到了javacc,並最終生成了jute對應的文件。
2.log4j未配置,看著源碼,最後發現classLoader沒有找到log4j.properties,classLoader找的路徑在target目錄下,不知道爲什麽,在resource下的文件除了log4j,其他文件都複製過去了。by the way,zookeeper使用log4j。
3.啓動的時候,報了NoClassDefFoundError,具體是com/codahale/metrics/Reservoir這個類沒找到,但實際在ide上是可以打開的,最後根據這個issues最後一個commen得到提示,之前試過很多,將pom.xml的scope修改,但是都沒有用,其實就是運行時,對應的jar沒有加載到,點是想到了,但是沒有想到在運行配置裏面添加。
最後,這個字體使用的繁體,可能看起來有點異樣,原因是這麽搞完很晚了,突然心血來潮,要記錄下來,用微軟輸入法,按了幾下,看著打出來的是繁體,但是也無所謂了,都是中文,沒有閲讀障礙就好。
这篇关于idea 本地啓動 zookeeper的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-10百万架构师第十三课:源码分析:Spring 源码分析:Spring核心IOC容器及依赖注入原理|JavaGuide
- 2025-01-10便捷好用的电商API工具合集
- 2025-01-09必试!帮 J 人团队解决物流错发漏发的软件神器!
- 2025-01-09不容小觑!助力 J 人物流客服安抚情绪的软件!
- 2025-01-09为什么医疗团队协作离不开智能文档工具?
- 2025-01-09惊叹:J 人团队用啥软件让物流服务快又准?
- 2025-01-09如何利用数据分析工具优化项目资源分配?4种工具推荐
- 2025-01-09多学科协作难?这款文档工具可以帮你省心省力
- 2025-01-09团队中的技术项目经理TPM:工作内容与资源优化策略
- 2025-01-09JIT生产管理法:优化流程,提升竞争力的秘诀