我正在尝试将spagoBI工作室连接到hive。 但是当我尝试为hive服务器添加数据源时,我在测试连接时遇到了以下异常。
org.eclipse.birt.report.data.oda.jdbc.JDBCException:没有合适的驱动程序。 在org.eclipse.birt.report.data.oda.jdbc.JDBCDriverManager.testConnection(JDBCDriverManager.java:729) 在org.eclipse.birt.report.data.oda.jdbc.ui.util.DriverLoader.testConnection(DriverLoader.java:147) 在org.eclipse.birt.report.data.oda.jdbc.ui.util.DriverLoader.testConnection(DriverLoader.java:138) 在org.eclipse.birt.report.data.oda.hive.ui.profile.HiveSelectionPageHelper.testConnection(HiveSelectionPageHelper.java:404) 在org.eclipse.birt.report.data.oda.hive.ui.profile.HiveSelectionPageHelper.access $ 4(HiveSelectionPageHelper.java:392) 在org.eclipse.birt.report.data.oda.hive.ui.profile.HiveSelectionPageHelper $ 2.widgetSelected(HiveSelectionPageHelper.java:333) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234) 在org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) 在org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) 在org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) 在org.eclipse.jface.window.Window.runEventLoop(Window.java:825) 在org.eclipse.jface.window.Window.open(Window.java:801) 在org.eclipse.birt.report.designer.data.ui.actions.NewDataSourceAction.run(NewDataSourceAction.java:126) 在org.eclipse.jface.action.Action.runWithEvent(Action.java:498) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) at org.eclipse.jface.action.ActionContributionItem.access $ 2(ActionContributionItem.java:501) at org.eclipse.jface.action.ActionContributionItem $ 5.handleEvent(ActionContributionItem.java:411) 在org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) 在org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) 在org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) 在org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640) 在org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604) 在org.eclipse.ui.internal.Workbench.access $ 4(Workbench.java:2438) 在org.eclipse.ui.internal.Workbench $ 7.run(Workbench.java:671) 在org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) 在org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664) 在org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) 在org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) 在org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) 在org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 在org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 在org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) 在org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) 在org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620) 在org.eclipse.equinox.launcher.Main.basicRun(Main.java:575) 在org.eclipse.equinox.launcher.Main.run(Main.java:1408) 在org.eclipse.equinox.launcher.Main.main(Main.java:1384)
请帮助。
答案 0 :(得分:0)
在创建连接时在连接配置文件中创建数据库连接“ GenericJDBC ”,然后单击“下一步”。 提供常规标签中的所有详细信息,然后点击添加广告上方的三角形: - 蜂房JDBC, 蜂房EXEC, 蜂房metastore, 蜂巢式服务, libfb, libthrift, 蜂房常见, 共享记录, slf4j.api, Hadoop的核心, Hadoop的通用, Hadoop的thriftfs, 公地CLI, log4j的, 番石榴, 公共的集合, 公共的配置, Hadoop的身份验证, Hadoop的HDFS
我没有提到罐子的版本,因为我不知道你使用哪些罐子。 您可能需要查看您的hadoop和hive版本以找到上述罐子的版本。 在proerties标签中提供适用的所有细节。
要选择驱动程序,请在属性选项卡中,单击“驱动程序”选项旁边带有3个点(...)的按钮,然后转到“浏览类”选项。 它将显示罐子列表中的所有可用驱动程序。 从那里,根据您使用的hiveserver的版本,选择相应的驱动程序。 对于hive2: - 选择“ org.apache.hive.jdbc.HiveDriver ”。 否则: - 选择“ org.apache.hadoop.hive.jdbc.HiveDriver ”
然后单击“确定”和“测试连接”。
我希望它有所帮助。