好的,我尝试在配置单元上执行show databases,但是当我执行时,它返回这个错误
失败,出现异常java.io.ioexception:java.lang.illegalargumentexception:java.net.urisyntaxception:绝对uri中的相对路径:${system:user.name%7d
我已经在xml中检查了一下,看看发生了什么,但是我所做的任何更改都不能修复这个错误。
以下是xml的相关部分:
<property>
<name>hive.exec.scratchdir</name>
<value>/tmp/hive-${user.name}</value>
<description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/<username> is created, with ${hive.scratch.dir.permission}.</description>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/tmp/${system:user.name}</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/tmp/${hive.session.id}_resources</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
<property>
<name>hive.scratch.dir.permission</name>
<value>733</value>
<description>The permission for the user specific scratch directories that get created.</description>
</property>
<property>
<name>hive.querylog.location</name>
<value>/tmp/${system:user.name}</value>
<description>Location of Hive run time structured log file</description>
</property>
除此之外,我想不出任何其他属性会导致这些错误,但我对这个完全陌生。我仍然没有弄清楚很多事情,例如如何将windows虚拟机中的windows程序连接到linux虚拟机中的hive。
不管怎样,如果我能得到任何帮助,我会很感激的。
1条答案
按热度按时间ecbunoof1#
是什么
${system:user.name}
? 为什么不用${user.name}
为了hive.exec.local.scratchdir
以及hive.querylog.location
. 好像${system:user.name}
未展开。