版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wuxintdrh/article/details/83374424
1.1、died backtype.storm.generated.InvalidTopologyException
解决方法: 参考https://blog.csdn.net/BigData_Mining/article/details/79894435
- 1)检查Spout和Bolt代码中的declareOutputFields方法
- 2)declare的Field数量 等于 collector.emit数量
- 3) setBolt方法中的id没有对应起来
- 4)我的是在declareOutputFields中使用decalreStrem, 在设置streamId的时候不一致。
1.2、Attempting to call unbound fn: #'backtype.storm.util/some?
删除下面的依赖。
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure</artifactId>
<version>1.8.0</version>
</dependency>
1.3、序列化问题, 发送List<String>
的时候, 报错java.io.NotSerializableException: java.util.ArrayList$SubList
。
改为ArrayList
//用 ArrayList包装一下。就可以了, ArrayList 是继承java.io.Serializable
collector.emit(new Values(new ArrayList<String>(linesIt.subList(0, 100))));