修复 Java 未解决的编译错误

Rashmi Patidar 2024年2月15日
修复 Java 未解决的编译错误

Java 在三个组件上工作:JVM、JRE 和 JDK。

JVM(Java 虚拟机)在物理上并不存在,它提供了运行字节码的环境。这个字节码也可以习惯于在另一台机器上运行,因为它们是平台无关的。

同样,JRE 是运行时环境,它包含 JVM 和支持库和 jar 以加载系统中的程序。JDK 是构建和开发企业级解决方案所需的 Java 开发工具包。

所有组件共同构成了应用程序以正确构建和运行。如果任何函数中断,则会导致编译时或运行时问题。

Java 语言首先将源代码转换为类文件。并且运行时环境使用类文件或字节码来运行实际程序。

源代码到类文件或机器可理解的字节码的转换过程称为编译。编译是应用程序运行过程的关键部分,需要在应用程序运行之前通过。

编译过程涉及解决语法和语义问题、优化问题以及正确使用特征,这是编译器的实际工作。JVM 通过首先加载代码、验证加载的更改并执行应用程序来运行应用程序,最后创建运行时环境来运行代码。

下面是显示 Java 编译问题的代码块。

public class CompilationIssues {
  public static void main(String[] args) {
    MyClass myClass = new MyClass();
    System.out.println("The instance of MyClass is : " + myClass);
  }
}

CompilationIssues 类包含上述代码块中的 main 方法。

该方法有一个使用 new 关键字创建的 MyClass 实例。该对象附加了打印流函数以打印新创建的对象的对象。

与上述程序相关的观察结果是:

如果使用 Intellij、Eclipse 和 Netbeans 等 IDE,它将填充红色错误,指出 MyClass 类不可用。

编辑器提供了各种建议来导入类(如果存在于范围内)。如果找不到类名,则建议在包中创建另一个同名的新类。

IDE 中的选项截图如下。

来自编辑器的建议,以避免在 Intellij 编辑器或 IDE 中出现编译问题

如果文件是用记事本编写的简单 Java 文件或没有特殊的 Java 编辑器,则保存和编译是解决方案。

这样,它将以下面给定的格式给出错误。此外,它将提供有关存在实际问题的线路的建议。只能通过错误定义和堆栈跟踪来根除或解决问题。

以下是上述编译问题错误的输出。

C :\Users\IdeaProjects\Test\src\main\java\CompilationIssues.java : 3 : 9 java
    : cannot find symbol symbol : class MyClass location : class CompilationIssues

解决此类问题的方法可能是敏锐地观察堆栈跟踪。

人们可以清楚地观察和理解问题并提供解决方案。如果不存在,可以通过创建类来解决上述问题。

如果显示错误的类已经存在,请使用导入语句 import org.test.MyClass 语句在包含 main 方法的类中导入包,并在问题被填充的位置。此导入语句将解决编译问题。

当 Java 中定义的规则不满足其条件时,也会发生编译。像异常处理、无法访问的代码、范围或变量、公共-私有访问修饰符的使用、初始化变量是一些编译问题的例子。

最坏的情况是,可能存在不兼容的 Java 版本。像 Java 11 功能一样,并将环境 Java 变量设置为 Java 8。

应该保留适当的注释并观察程序编译时出现的错误消息。它将有助于快速、适当地解决问题。

作者: Rashmi Patidar
Rashmi Patidar avatar Rashmi Patidar avatar

Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.

LinkedIn

相关文章 - Java Error