我正在构建一个Java webapp,需要通过JDBC访问Hive,部署在Glassfish上。
一旦hive jdbc maven依赖
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>2.1.0</version>
</dependency>
添加,部署中断和Glassfish提供以下异常:
部署期间发生错误:加载应用程序时出现异常:CDI部署失败:WELD-001408:类型为Injector的依赖项不满意,注入点带有限定符@Default [BackedAnnotatedParameter] [BackedAnnotatedConstructor]的参数1 @Inject public org.apache。 hadoop.yarn.server.resourcemanager.webapp.RMWebAppFilter(Injector)at org.apache.hadoop.yarn.server.resourcemanager.webapp.RMWebAppFilter。(RMWebAppFilter.java:0)。有关更多详细信息,请参阅server.log。
答案 0 :(得分:1)
这似乎是由 Glassfish 4.1.1(1)提供的libs的依赖性问题。
适用于 Glassfish 4.1(13)。如果可能,您应该使用此版本。
你可以在这里下载:https://glassfish.java.net/download-archive.html
答案 1 :(得分:1)
通过
解决了这个问题答案 2 :(得分:1)
Hive-jdbc有一些不幸的依赖(javax。*,jetty等)。 您的错误来自传递中包含的YARN webapp。
尝试减少hive-jdbc的Maven依赖关系, 因为某些依赖项(如YARN)不属于JDBC驱动程序。