Storm本地模式环境问题


运行从github上把 storm-starter的代码 fork下来
将m2-pom.xml重命名为pom.xml,编译一下,导入eclipse里
 
运行第一个例子ExclamationTopology
 
问题1
java.net.SocketException: Address family not supported by protocol family: connect
 
stackoverflow上说是因为Java7会自动使用IPv6进行连接,修改方法是 添加jvm参数 -Djava.net.preferIPv4Stack=true,该参数会强制jvm走IPv4
 
问题2
提示找不到kryo的类,很明显,pom中没有依赖kryo,引入
 
<dependency>
  <groupId>com.esotericsoftware.kryo</groupId>
  <artifactId>kryo</artifactId>
  <version>2.22</version>
</dependency>
 
问题3
java.lang.NoSuchMethodError: backtype.storm.serialization.DefaultKryoFactory$KryoSerializableDefault.setReferences(Z)V
 
这好像是个版本冲突啊,查了下  https://github.com/thinkaurelius/titan/issues/301
使用推荐的Kryo 版本 2.17
<dependency>
  <groupId>com.esotericsoftware.kryo</groupId>
  <artifactId>kryo</artifactId>
  <version>2.17</version>
</dependency>
 
问题解决,本地运行ok

猜你喜欢

转载自isuifengfei.iteye.com/blog/1998265