在Eclipse中运行Java文件时出错
我有一个包含若干文件的Java项目,现在在其中的一个文件里,为了测试,我创建了一个主方法,并尝试通过在该文件上右键点击并选择Run as > Java Application来运行这个单独的Java文件。这个文件没有编译问题,也没有任何依赖。运行时,控制台显示找不到main类。
控制台中的确切错误:Error: Could not find or load main class com.ccs.cav.constants.Testing
我的项目有若干编译问题,但我不明白为什么即使没有问题,它仍然无法运行这个单独的文件?
package com.ccs.cav.constants;
import java.util.HashSet;
public class Testing {
public static void main(String[] args) {
System.out.println("SK");
}
}
解决方案
看来Eclipse并没有把Testing.java编译成Testing.class文件。我会确认Eclipse > Project菜单 > Build Project是否在工作。你可以查看Problems视图,看看编译是否失败。
或者检查Error Log视图,排查还有什么可能阻止编译的原因(Eclipse > 窗口 > 显示视图 > 其他 > 常规 > 错误日志 > 打开)。
项目的构建路径决定了哪些源文件夹会被编译。请再次确认Eclipse > 项目菜单 > 属性 > Java构建路径。
Eclipse工作区允许通过Eclipse > 窗口 > 首选项 > Java > 已安装的JRE来配置正在使用的Java编译器。也许这个Eclipse工作区有问题?
备选方案
请在Eclipse IDE中再次对该项目进行构建,步骤为 项目菜单 -> 清理。清理并构建该项目的选项可以解决 幽灵编译 错误,或IDE与文件系统不同步导致的问题。然后,在 项目资源管理器 中通过右键点击一次或按 F5键 进行刷新。
(或)
从你给出的截图和文件夹结构看,这似乎是一个Web服务项目,可能是Struts应用。这意味着该项目有一个 'WEB-INF/web.xml' 文件,你需要把测试类的位置添加到作为主类路径的位置。
另外一个建议是使用像 JUnit 这样的框架,在Java应用中为测试方法添加注解,例如 @Test,等等,以运行一个测试方法。