【问题】mycat同步数据到zookeeper无法加载XmltoZkMain主类
问题 在配置好zookeeper后,输入了mycat/bin中的同步数据命令:init_zk_data.sh,出现如下问题。 问题探索 仔细看这个问题,set HOME_DIR下,第一行是Java8移除了对MaxPermSize的支持,只是个提醒,不用管,主要问题在第二行,找不到这个主类,那么就来找一下这个类,看是否存在。 路径:首先在lib下找到mycat的核心包: 打开它,按照错误提示中的路径找主类 可以看到,这个类是存在的。那么为什么错误提示找不到?最有可能的原因,就是路径有问题,回到命令的执行文件,打开它我们可以看到他的结构: 看完这个之后,有点思路了,pwd保存的是当前的路径,其后所使用的所有路径都是变量替代的,所以出现问题的矛头指向了pwd。我们来输出一下这个MYCAT_HOME: 问题原因出来了,在根目录下运行这个命令,他的MYCAT_HOME路径是根目录的上级目录,命令文件里复制路径那里就出问题了。因为这个主类包是在MYCAT的lib文件夹中的,它连lib都找不到,更不到主类了。 解决办法 研究到现在,解决办法也就有了,定位启动目录,在bin目录下启动: 总结 这篇博客存在的意义并不是这个问题解决起来有多难,而是发现问题了从什么地方去考虑。不要一有问题就直接粘贴到百度,多想想它为什么会出这样的错,多看日志,会成长的更快。 来源: oschina 链接: https: