当前位置: 首页 > 知识库问答 >
问题:

带spark 1.3.1Classnotfoundexception的Apache phoenix 4.5.1

阎渝
2023-03-14

我们正在运行火花流来获得Kafka的饲料。现在我们正在尝试使用Phoenix JDBC从HBase中提取一些数据。当我在本地运行代码时,它运行良好,没有任何问题,但当我使用yarn-cluster运行它时,它会抛出异常。

Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.ipc.controller.ClientRpcControllerFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:190)

下面是代码片段:

def check(arg0:String,arg1:String)
{
  val query = "query"

        Class.forName("org.apache.phoenix.jdbc.PhoenixDriver");
    var conn =  DriverManager.getConnection("jdbc:phoenix:IP:zkport:/znode");
        val statement = conn.createStatement()
        val resultSet = statement.executeQuery(query)
        var out="";
        while(resultSet.next())
        {
          out=resultSet.getString("..")
        }
}

添加的SBT依赖项为

libraryDependencies += "org.apache.phoenix" % "phoenix-core" % "4.5.1-HBase-1.0"

我手动检查了丢失的类,它在凤凰核心罐子中。纱线/火花抛出异常背后的原因是什么。Spark 1.3.1ClassNotFoundException上的Apache Phoenix(4.3.1和4.4.0-hbase-0.98)也报告了同样的问题,但我尝试将其作为单独的类路径添加,但这也不起作用。有人能帮我解决这个问题吗

共有1个答案

寿飞飙
2023-03-14

将phoenix-core添加到classpath.txt中是有效的。但一个奇怪的问题。

 类似资料:
  • 我有一个报告,我想在其中显示页脚,但不想显示页眉部分-在摘要带。我可以通过选中“带有页眉和页脚的摘要”来显示两者或不显示。

  • 现在我的问题是,如何在自定义的而不是自定义的中重写方法?我没有在这里公布我的代码,因为它与链接的代码本质上是相同的,只是我需要为子创建一个自定义的来代替,这样它就可以按照“pptang”的答案所述进行正确的度量。 否则,有没有比在第二个RecyclerView中使用1个RecyclerView更好的方法?只能有1个RecyclerView使用上述列表和每个中唯一项的网格填充活动/片段吗?

  • 2)如果困境是真的,为什么事情要这样设置?谷歌计划反对TabHost和基于标签的多活动方法吗?多活动方法有什么不愉快的地方吗? 3)如果继续支持这两种方法,它们的优缺点是什么?如果我使用ActionBar+片段,我会遇到任何困难吗?例如,当我想让我的一个选项卡屏幕滑过/弹出一个额外的屏幕/片段时,我会不会在ActionBar中切换到/从选项卡中切换到选项卡?

  • 问题内容: 之间有什么区别 和 我都尝试过,但似乎都可以,但是我是在问,以防万一我需要小心(例如,%以外的单位等)。 问题答案: 这完全是关于HTML标记的真实有效性。这是W3C(WWW联盟)的工作目的。许多事情可能都在HTML中起作用,但是必须进行验证才能被网络浏览器更仔细地识别。您甚至可以在开头和结尾处省略and 标记,但是完全不建议这样做,没有人这样做,它被视为“错误代码”。 因此,将它们放

  • 根据Spring网站上的这个教程,我知道了如何使用Stomp和Spring4建立一个基于WebSocket的应用程序。在客户端,我们有: 在服务器端,控制器中有以下内容: 现在,我明白了确保如果消息发送到目标,那么将调用方法。由于订阅了,将消息发送回。 那么,有什么方法可以用Spring4、SockJS和没有跺脚的情况下做到这一点呢?还是Spring4WebSocket只支持stomp?

  • 我正在尝试将vaadin与spring(没有Spring Boot)和基于java注释的spring部分配置结合起来。 自动连接似乎适用于vaadin ui部分,但不适用于“自定义ui类”(例如,“公共类LoginScreen扩展自定义组件”)。我在SysOut上得到一个NPE或一个空对象。 此外,我注意到“@ComponentScan(base Packages={"net.myapp"})”没

  • 文章说不带 , 既然不带,那为什么还有下面这种写法 ?

  • 问题内容: 我有一个多行HTML文档,我试图从中获取一些东西。我正在使用java的正则表达式(我知道-XML解析器bla bla bla bla,请在这里忍受:))。 我已经在字符串中输入了此HTML:输入。 显然,它不起作用。但是,如果将Pattern.compile与Pattern.DOTALL一起使用,则可以获得模式匹配。 所以,我的问题是-如何使用string.replaceall做类似P