『急』关于hadoop-core-***.jar的问题!!!!!

守猪待屠 2013-05-20 05:49:33
hadoop执行java程序时要先编译成class文件,才能用hadoop命令,但是编译的时候会有如下错误:package org.apache.hadoop.*** does not exist.即总是会有些包找不到。
我的hadoop路径:/usr/local/hadoop
我的CLASSPATH环境变量:/usr/local/hadoop:/usr/local/hadoop/lib:/usr/lib/jvm/java/jdk_1.7.0_03/lib
什么PATH,HADOOP_HOME等环境变量我认为都没问题;
我知道上述问题,我只要在CLASSPATH里头添加/usr/local/hadoop/hadoop-core-1.0.4.jar或者javac -classpath /usr/local/hadoop/hadoop-core-1.0.4.jar.都可以解决上述问题
但,我想问:
我已经在CLASSPATH环境变量里头包含过了HADOOP的安装路径/usr/local/hadoop。而我们缺失的包/usr/local/hadoop/hadoop-core-1.0.4.jar也是在该路径下的,为什么还要我在javac使用时明确通过-classpath来指定该包?
急!!!在线等
...全文
322 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
撸大湿 2013-05-20
  • 打赏
  • 举报
回复
这是JAVA问题,和HADOOP没有太多的关系 set CLASSPATH=path1;path2... 每个 path 以文件名或目录结尾,该文件名或目录取决于将类路径设置成什么: 对于包含 .class 文件的 .zip 或 .jar 文件,路径以 .zip 或 .jar 文件名结尾。 对于未命名包中的 .class 文件,路径以包含 .class 文件的目录结尾。 对于已命名包中的 .class 文件,路径以包含“root”包(完整包名中的第一个包)的目录结尾。 用分号来分隔多个项目。使用 set 命令时,需要省略等号两边的空格(=)。其中 jdkTool 可以为 java、javac、javadoc,等等。有关详细列表,参见 JDK 开发工具。 仔细看这篇文章CLASSPATH详解

20,808

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧