当前位置: 首页 > 面试题库 >

似乎您正在使用JRE运行sqoop-但JAVA_HOME设置为JDK

曹茂材
2023-03-14
问题内容

我试图在Ubuntu上设置sqoop(sqoop-1.4.3.bin__hadoop-1.0.0)。我可以运行基本的sqoop帮助等,而不会出现问题。当我运行以下命令时,我得到一个错误:

sqoop import --connect jdbc:mysql://localhost/test --table sales -m 1

13/04/19 10:35:24 INFO orm.CompilationManager: HADOOP_MAPRED_HOME is /opt/hadoop/hadoop-1.0.4
13/04/19 10:35:24 ERROR orm.CompilationManager: It seems as though you are running sqoop with a JRE.
13/04/19 10:35:24 ERROR orm.CompilationManager: Sqoop requires a JDK that can compile Java code.
13/04/19 10:35:24 ERROR orm.CompilationManager: Please install a JDK and set $JAVA_HOME to use it.
13/04/19 10:35:24 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Could not start Java compiler.
    at org.apache.sqoop.orm.CompilationManager.compile(CompilationManager.java:176)

我用谷歌搜索找到了此错误的答案,而大多数答案指向将JAVA_HOME设置为您的JDK(在〜/ .bashrc中[在Ubuntu上])。

$ echo $JAVA_HOME
/usr/lib/jvm/jdk1.7.0_15

这些是我设置的其他变量:

export HADOOP_COMMON_HOME=/opt/hadoop/hadoop-1.0.4
export HADOOP_MAPRED_HOME=/opt/hadoop/hadoop-1.0.4
export SQOOP_HOME=/opt/hadoop/sqoop-1.4.3.bin__hadoop-1.0.0
export PATH=$PATH:$SQOOP_HOME/bin

我还将mysql jdbc驱动程序添加到lib文件夹中。

任何想法为什么我会收到此错误?在此先感谢,迪迪


问题答案:

Scoop创建表示要导入的表的架构的Java类。因此,要创建这些类,您需要jdk而不是jre。

同时在./bashrc和中设置JAVA_HOME $HADOOP_HOME/conf/hadoop-env.sh

那应该工作。



 类似资料:
  • 因此,我正在为我使用的服务器制作一个不和谐机器人,并希望添加一个审查功能,以便如果用户在“禁止使用的词语”列表中说了一些话,而不是在特定的频道(工作)中,它将编辑消息以使“[编辑”在它的地方。我相信代码本身是工作的,但是每次我测试它时都会收到这个错误消息。我尝试通过不和谐开发者门户添加权限(选择“OAuth2”,选择“机器人”范围,以及管理角色、查看频道、发送消息、管理消息、读取消息历史记录和提及

  • 问题内容: 我的PHP版本是5.1.6,请按照以下说明安装Json: 现在,我检查是否启用了Json,但无法运行json_encode: 检查1: 结果1: 检查2: 结果2: 但是运行时: 这是运行链接: 检查Json:http : //69.64.69.43/fre/json.php php_info():http://69.64.69.43/fre/info.php 我当时确实在看并阅读了许

  • 我正在构建分发包来安装wikidata-query-rdf / Blazegraph,以便与我的Wikibase安装一起使用。 当我执行(这里是我所遵循的说明)时,我正在努力修复一些与Java相关的问题。 我正在Ubuntu 18.04下运行所有内容。 我得到的错误是 [错误]无法在项目常见:MavenReport上执行目标组织.apache.maven.插件:maven-javadoc-plug

  • null 但是,如果我手动浏览到C:\java\jre\bin,并运行,它会告诉我版本很好,没有错误。 这是我从C:\java\bin\运行时遇到的问题。 JRE和JDK中的java.exe有什么区别?为什么JDK java.exe这么不高兴?

  • 我的笔记本电脑上安装了Java14和Java8,但默认情况下我想使用8,所以我尝试将我的java_HOME设置为使用-V1.8。 在~/。bash_profile我添加了一行。执行此操作后,立即返回正确的路径,返回正确的版本。然而,如果我关闭终端并再次打开它,将产生一个空行,显示JAVA 14。编辑之后。bash_profile我做的当我重新打开终端并执行行设置JAVA_HOME仍然存在。为什么我

  • 问题内容: 原因很长很无聊,但是我需要运行一个Ant脚本来从Java 1.4应用程序编译Java 1.5代码。我一直收到此错误,但是: 在我的代码中,我有: 但它忽略了它。我也尝试过p.setUserProperty(String,String),但这也不能解决问题。有没有一种方法而无需启动单独的过程? 问题答案: 您的buildfile中的javac任务有吗?如果不是,那么属性设置为什么都无关紧