首页 > 解决方案 > 如何在同一目录中同时使用 javac 和 java 命令

问题描述

我想用“javac”和“java”命令编译和执行这个程序:

package mypackage;

public class Myclass {

    public static void main(String[] args){
        System.out.println("test");
    }
}

我遇到的问题:当我在“mypackage”文件夹中并在其中使用“javac”时,它会生成文件“Myclass.class”。但是当我使用命令“java Myclass”(我仍在“mypackage”文件夹中)时,我收到了以下消息:

错误:无法找到或加载主类 Myclass
原因:java.lang.NoClassDefFoundError:mypackage/Myclass(错误名称:Myclass)

我找到的解决方案:我不应该进入“mypackage”文件夹并执行“java Myclass”,而是向上一个文件夹执行“java mypackage.Myclass”(它有效)。 https://stackoverflow.com/a/7509317/10104743

我的问题:我看到有些人可以直接运行“javac Myclass.java”和“java Myclass”命令,而无需像我一样上一个文件夹。为什么它对我不起作用,我能做些什么来解决这个问题?

标签: javajavac

解决方案


推荐阅读