Java单个文件使用类遇Unresolved Compilation Problem编译错误求助
Java单个文件类对象使用编译错误解决
问题根源
你的代码存在几个关键问题导致编译失败:
- package声明必须放在所有import语句之前,你的代码顺序颠倒了
- 类名和方法名不符合Java命名规范(虽非语法错误,但易引发混淆)
- 若保留package,编译运行时未遵循包结构要求
解决方案一:移除package(适合单个文件练习)
修正后的代码:
import java.util.Scanner; public class Functions { public static void main (String args[]) { Scanner sc = new Scanner(System.in); Functions fun = new Functions(); fun.print("Hello World"); } public void print(String text) { System.out.print(text); } }
操作步骤:
- 将文件保存为
Functions.java(文件名必须与公共类名完全一致) - 打开命令行进入文件所在目录,执行:
javac Functions.java java Functions
解决方案二:保留package(遵循项目结构规范)
- 创建
functions目录,将代码文件放入该目录 - 修正代码的package与import顺序:
package functions; import java.util.Scanner; public class Functions { public static void main (String args[]) { Scanner sc = new Scanner(System.in); Functions fun = new Functions(); fun.print("Hello World"); } public void print(String text) { System.out.print(text); } }
- 在
functions目录的上级目录执行编译:
javac functions/Functions.java
- 运行时使用全类名:
java functions.Functions
内容的提问来源于stack exchange,提问作者Abraham Duarte
相关产品推荐
相关产品推荐

