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

发射母舰失败

淳于健
2023-03-14

我在Mac OS上安装了hadoop和hive。我能够毫无问题地发布hadoop和Thread。我可以运行hadoop fs相关命令来操作hdfs上的文件。但我未能启动配置单元进程,并出现以下错误。

$ hive
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/Cellar/hive/2.1.0/libexec/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/Cellar/hadoop/2.8.0/libexec/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Logging initialized using configuration in jar:file:/usr/local/Cellar/hive/2.1.0/libexec/lib/hive-common-2.1.0.jar!/hive-log4j2.properties Async: true
Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bhive.session.id%7D_resources
    at org.apache.hadoop.fs.Path.initialize(Path.java:254)
    at org.apache.hadoop.fs.Path.<init>(Path.java:212)
    at org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:634)
    at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:550)
    at org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:518)
    at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:705)
    at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:641)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.hadoop.util.RunJar.run(RunJar.java:234)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:148)
Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bhive.session.id%7D_resources
    at java.net.URI.checkPath(URI.java:1823)
    at java.net.URI.<init>(URI.java:745)
    at org.apache.hadoop.fs.Path.initialize(Path.java:251)
    ... 12 more

我是hive的新手,不知道我应该看哪里。如何解决上述问题?

共有1个答案

史昀
2023-03-14

您可以尝试将此添加到您的hive-site.xml的顶部

<property>
    <name>system:java.io.tmpdir</name>
    <value>/tmp/hive/java</value>
</property>

或者将目录更改为一些/tmp/mydir,如配置Hive中所述

 类似资料:
  • 本地maven运行良好。然而,詹金斯未能发射它。我注意到下面的反斜杠,但不确定它来自哪里: $java-cp C:\windows\system32\config\systemprofile.jenkins\plugins\maven-plugin\WEB-INF\lib\maven31-agent-1.5.jar;C:\tes\apache-maven-3.2.5-bin\apache-mave

  • ./dev/make-distribution.sh--name“hadoop2-now-hive”--tgz“-Pyarn,hadoop-provided,Hadoop-2.7,parquet-provided” 当我运行时,会出现以下异常: 我根据Hadoop2中hadoop jar文件在哪里的帖子编辑SPARK_DIST_CLASSPATH?

  • 我正在为赋值编写一个java程序,但有一个例外,用户不能为不存在的行或列输入值。i、 e如果电路板为5x7,且用户输入的列值为10,则屏幕将打印“错误:无效列”。然而,我不确定如何做这个最后的例外,我需要今天提交它。如果有人能帮忙,我会非常感激的!下面是我的makeGuess()函数代码:

  • 我想通过SSH连接到一个詹金斯奴隶。

  • 我刚开始冬眠,尝试一些应该很容易的事情,但我无法让它工作。 有两个表,一个人和一个地址。一个人可以有一个或多个地址,即:一个OneTo多映射。当我试图向两个不同的人添加相同的地址时,我会遇到异常。这几乎就像Unique在连接表的foriegn_key上被强制执行一样。 我的源代码: 人 地址 主要 代码在保存Person对象Harry时崩溃。这是因为在个人地址表中,引用“1”的地址已经存在并分配给

  • 问题内容: 我注意到无法按预期解析。见下文: 只有最后一次尝试才会“通过”。按照文档,应该能够解析出文本格式。还要注意大写字母“ M”与小写字母“ m”的细微差别。 这真的很烦人,因为我默认情况下无法解析Oracle DB默认设置格式的字符串 同样,对于以下程序: 我得到以下输出: 显然,格式说明符不处理任何文本内容,对我而言似乎是数字… 但是,如果将Locale更改为,则会得到以下输出: 真的很