eclipse运行Java程序时出现这样的Error提示框怎么解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eclipse运行Java程序时出现这样的Error提示框怎么解决相关的知识,希望对你有一定的参考价值。

其他程序运行没问题,就这个会有提示框

参考技术A 可能是这2种情况导致的:

1.环境变量没配置
2.eclipse和jdk版本位数不一致,要同是32位或者64位(注意32位机子只能使用32位的,64位可以兼容使用32位和64位的)

解决办法:
1.配置环境变量:
第一步:右键“我的电脑”,点击“属性”
第二步:点击“高级系统设置”,点击“环境变量(N)”
第三步:
在“系统变量(S)”下新建2个变量,
第1个是JAVA_HOME,变量值=C:\Program Files\Java\jdk1.7.0_04(请修改为自己JDK安装目录)
第2个是CLASSPATH,变量值=.;%JAVA_HOME%\lib;
然后修改变量Path的值,在最前面添加%JAVA_HOME%\bin;
2.如果你不想配置环境变量的话:
可以修改eclipse目录下的eclipse.ini,在第1,2行加上配置即可:
-vm
C:/Program Files (x86)/Java/jre7/bin/javaw.exe(请修改为自己的javaw.exe所在目录)
参考技术B 可以重新打开elicpse,重新创建工程文件,执行

当我在 Eclipse 中运行 hadoop 作业时出现异常

【中文标题】当我在 Eclipse 中运行 hadoop 作业时出现异常【英文标题】:Exception when I run a hadoop job in Eclipse 【发布时间】:2015-11-07 18:24:00 【问题描述】:

我正在尝试运行 Hadoop 字数统计作业(我使用的是 hadoop 2.6.0)。当我将项目导出到可运行的 jar 并从 CLI 运行它时,它可以工作。但是,当我在 Eclipse 中使用“作为 java 应用程序运行”启动它时,我收到以下异常:

线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 在 org.apache.hadoop.conf.Configuration.(Configuration.java:173) 在 WordCount.main(WordCount.java:54) 引起:java.lang.ClassNotFoundException:org.apache.commons.logging.LogFactory 在 java.net.URLClassLoader$1.run(URLClassLoader.java:366) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:355) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.net.URLClassLoader.findClass(URLClassLoader.java:354) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:425) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 2 更多

谁能帮我解决这个问题?

【问题讨论】:

【参考方案1】:

我认为您没有正确配置 Eclipse,它不知道在哪里可以找到 Apache Commons 库 jar。来自this tutorial,您可能遗漏了最后一步:

要从 Eclipse 运行测试,您还需要执行以下操作:

在项目属性下,选择 Java 构建路径,然后选择库选项卡 点击“添加外部类文件夹”,选择当前项目的构建目录

您可能还想查看this other tutorial,它显示了如何/在何处添加依赖项 jar 以运行 Hadoop 程序。

【讨论】:

实际上我已经在 /usr/local/hadoop/share/common 下添加了 JAR,在 /usr/local/hadoop/mapreduce/ 下添加了 JAR,但它不起作用 尝试 mvn 安装。请参阅svn.apache.org/repos/asf/hadoop/common/trunk/BUILDING.txt“将项目导入 Eclipse”。【参考方案2】:

您应该将 commons-logging-1.1.1.jar 添加到您的 eclipse 项目中并重新构建。

【讨论】:

我的 Hadoop 文件夹下不存在这个 JAR(commons-logging-1.1.1.jar),我使用的是 hadoop 2.6.0 版本【参考方案3】:

请在/usr/local/hadoop/share/hadoop/common/lib中添加所有.jar

【讨论】:

【参考方案4】:

检查你是否添加了 usr/lib/hadoop-0.20-mapreduce/bin 中的 jars

在此添加所有罐子:

当我直接从 eclipse 运行 MapReduce 程序时,这解决了我的问题。

【讨论】:

以上是关于eclipse运行Java程序时出现这样的Error提示框怎么解决的主要内容,如果未能解决你的问题,请参考以下文章

当我在 Eclipse 中运行 hadoop 作业时出现异常

在 Eclipse 中使用 Swing 实用程序时出现“访问限制错误”

在使用Eclipse编译JSP文件运行时出现如图的问题,请问该怎么解决?

在 Eclipse Juno 中运行 Groovy 时出现异常 java.lang.IncompatibleClassChangeError

尝试运行 Eclipse 产品时出现异常

从终端运行时出现运行时错误,但不是从 Eclipse