我在远程服务器上安装了Kafka,并在尝试运行时
~/kafka/bin/zookeeper-server-start.sh ~/kafka/config/zookeeper.properties
我收到一个错误
Unrecognized VM option 'PrintGCDateStamps'
kafka服务器无法启动。这不是在vm中运行,而是在已正确安装Java的Ubuntu Server 16.04上直接运行。有什么办法可以简单地纠正吗?
实际上,Kafka可以与Java的较新版本配合使用。我遇到了同样的问题,并且在kafka/bin/kafka-run-class.sh
脚本中发现了一个错误,在该脚本中错误地解析了Java版本。
该行捕获了太多的版本字符串:
JAVA_MAJOR_VERSION=$($JAVA -version 2>&1 | sed -E -n 's/.* version "([^.-]*).*"/\1/p')
这使if [[ "$JAVA_MAJOR_VERSION" -ge "9" ]]
条件无法识别正确的Java版本,并添加了一些不受支持的GC选项。
将上面的行更改为此解决了我的问题:
JAVA_MAJOR_VERSION=$($JAVA -version 2>&1 | sed -E -n 's/.* version "([^.-]*).*/\1/p')
我已经将其报告为Kafka的问题。可以在这里找到问题:https : //issues.apache.org/jira/browse/KAFKA-6855
编辑:对此有一个已提交的修复程序:https : //github.com/apache/kafka/commit/e9f86c3085fa8b65e77072389e0dd147b744f117
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句