产生原因:
依赖使用的是:
compile (group: 'com.aliyun.datahub', name: 'aliyun-sdk-datahub', version: '2.12.0-public')
然后和之前自己加的包依赖产生冲突, 看了下是sf4j-log4j 和 logback的冲突, logback是spring.boot依赖下的包, 那自然要去掉datahub中slf4j的包, 因此我改成
compile (group: 'com.aliyun.datahub', name: 'aliyun-sdk-datahub', version: '2.12.0-public')
{ exclude group: "org.slf4j"}
然后就出现了无解的ErrorMessage: InjectionManagerFactory not found, 查了下只有一条方案是加glassfish, 我加了然后出了Exclude-Empty 啥的错误,
经过大量的时间代价, 我终于发现 2.13.0 版本没有这样的问题, 改成以下即可
compile (group: 'com.aliyun.datahub', name: 'aliyun-sdk-datahub', version: '2.13.0-public') { exclude group: "org.slf4j"}
==============================================================
其它我遇到的datahub问题
1. HostException, 要么地址写错了, 要么网连错了, 可能是内网
2. ErrorMsg: parse Body fail 啥的, 把创建client的true改成false即可
3. 如果是啥404, 那当然是你project写错了, 或是datahub服务器地址写错了
4. 如果是啥permission denied, 那当然是没权限
5. 如果是啥timeout, 那当然是网断了
6. read time out reference -> list 啥的, 那就是datahub推的消息过多, 减少循环次数比较好
7. DatahubException, 重连和用上面这些没解决那恭喜了