启动azkaban时报错Could not initialize class org.apache.derby.jdbc.AutoloadedDriver40

时间:2024-03-24 10:36:12

安装azkaban,修改过配置文件后去启动executor时报错了
启动azkaban时报错Could not initialize class org.apache.derby.jdbc.AutoloadedDriver40

报错原因:大概就是找不到derby自动载入驱动类

分析原因:

1.azkaban在启动时因为检测到hive环境,如果有hive环境就加载hive的lib下所有的jar包!意思是在azkaban启动的时候没有加载hive时,hive没有找到derby,因为hive默认元数据交由derby来管理!
2.主要原因可能是hive高版本的bug,笔者在之前用hive低版本是没有出现该bug!
3.或者是azkaban的版本过低,调用的是hive老的api进行初始化,所以造成hive还会去寻找derby

这是azkaban启动executor脚本截图:
启动azkaban时报错Could not initialize class org.apache.derby.jdbc.AutoloadedDriver40

解决办法:

启动azkaban时报错Could not initialize class org.apache.derby.jdbc.AutoloadedDriver40
进入到/opt/module/hive/lib端,将derby-10.10.2.0.jar复制到/opt/module/azkaban/executor/extlib/

就可以正常启动了,server端也一样