我通常使用scala 2.10.x
。
由于我无法控制的组件的某些限制,我必须使用kafka
客户端版本0.7.2但是此版本的kakfa
只能使用scala ver 2.9.2编译并且不适用于scala 2.10。
注意:我无法使用较新版本的kafka,它无法正常工作,我无法控制实际的kafka
版本,因此我必须使用此客户端版本。 所以我必须使用kafka客户端0.7.2
所以我有多种选择:
0.7.2
kafka客户端的来源并使用scala 2.10
进行编译,遗憾的是,要执行的源代码有太多变化。jarajar
并更新scala-library.jar
以打包scala.* -> scala.29.*
之类的内容,然后更新kafka客户端0.7.2以从scala.29.*
导入类我尝试了这里也有问题。.war
,因为tomcat会加载不同的类加载器的不同战争,我可以发送我的kafka请求而不是我原来的从war
到war1
和war2
的{{1}}将成为一个简单的网络应用,其中包含一个简单的war2
。 我的问题:选项3听起来很明智吗?如果我向kafka client 0.7.2
发送GET
请求只是因为我有多个localhost
来解决多个类加载器问题的问题,我对它的开销有一些想法吗?
答案 0 :(得分:1)
最终使用scala 2.10编译kafka客户端0.7.2,并不难,一切正常。