【问题标题】:Error: Could not find or load main class VScode Caused by: java.lang.NoClassDefFoundError [duplicate]错误:无法找到或加载主类 VScode 原因:java.lang.NoClassDefFoundError [重复]
【发布时间】:2021-02-04 07:12:20
【问题描述】:

我的代码:

package JAVA_PROGRAMS;

public class fibonacci{

public static void main(String args[])
{
    int n1=0,n2=1,n3,i,count=10;

    System.out.print(n1+" "+n2);

    for(i=2;i<count;i++)
    {
        n3=1+n2;
        System.out.print(" "+n3);
        n1=n2;
        n2=n3;
    }
}

}

错误: 错误:无法找到或加载主类斐波那契 引起:java.lang.NoClassDefFoundError: JAVA_PROGRAMS/fibonacci(错误名称:fibonacci)

【问题讨论】:

  • java文件的名称是什么?
  • 由于package 语句,该类被命名为JAVA_PROGRAMS.fibonacci,如果您使用简单的java JAVA_PROGRAMS.fibonacci 命令运行,那么您需要相对于当前工作目录的文件JAVA_PROGRAMS/fibonacci.class。有关详细信息,请参阅顶部的重复链接。

标签: java visual-studio-code


【解决方案1】:

如果您保存的 java 文件的名称与文件的 “公共类” 名称不同,通常会发生这种情况。

在您的情况下,该文件应保存为 'fibonacci.java'

您在终端上编译它的方式是:- javac fibonacci.java,并运行您执行的程序 java fibonacci

但是在 vscode 上你可能只需要点击“运行”按钮,我不确定,因为我喜欢在终端上工作。

【讨论】:

  • 在终端上运行正常,但在使用运行时出现错误
  • 嗯...奇怪。所以问题只出在 VSCode 上?还是你的意思是在编译步骤之前一切都很好,然后事情就不起作用了?如果您可以通过驱动链接分享您的问题的屏幕截图,将会更有帮助。
  • 我在新文件夹中移动了几个程序并尝试运行它们,但错误发生如上,但只需使用终端就可以正常工作。不知道那里发生了什么。
  • 这个答案完全忽略了package JAVA_PROGRAMS;语句的非常重要的作用,使得这个答案毫无用处。
猜你喜欢
  • 2019-04-18
  • 1970-01-01
  • 2022-06-17
  • 1970-01-01
  • 2012-11-02
相关资源
最近更新 更多