Java 错误:无法找到或加载主类(与类路径/环境变量有关)

Java 错误:无法找到或加载主类(与类路径/环境变量有关),java,Java,这已经被问了无数次了,但我还没有找到解决办法。我的代码: import java.util.Scanner; import java.io.*; public class Reverse { public static void main(String[] args) { File myFile = new File(args[0]); try { Scanner input = new Scanner(myFile); String m

这已经被问了无数次了,但我还没有找到解决办法。我的代码:

import java.util.Scanner;
import java.io.*;

public class Reverse
{
public static void main(String[] args)
{
    File myFile = new File(args[0]);
    try
    {
        Scanner input = new Scanner(myFile);
        String message = "";
        while(input.hasNext())
        {
            message = input.nextLine() + message;
        }

        System.out.println(message);
        input.close();
    }
    catch(FileNotFoundException e)
    {
        System.exit(1);
    }
}
}
详情:

  • 通过Mac上的Eclipse进行编码

  • 使用javac Reverse.java在命令行上运行,然后使用java Reverse.java(编辑:java Reverse works)

-这与类路径有关,但我不知道应该做什么

我还没有做任何关于类路径的事情,所以非常感谢您的帮助


编辑:我现在的问题是,java-classpath是如何实现的。反向工作?我不太理解-classpath标记和“.”标记。

正如Pradeep的评论所提到的,您需要运行
JavaReverse
,而不是
JavaReverse.java
。否则,它将查找名为
Reverse.java
的类,该类不存在。 您的类称为
Reverse


作为对编辑问题的回答,
java-classpath.
基本上告诉
java
使用当前工作目录
作为
类路径的一部分。
classpath
是java查找要加载和运行的类的路径。

可能与我刚才在您的程序中运行的类重复,我没有收到您提到的任何错误。通过“JavaReverse”而不是“Reverse.java”运行,我尝试了javacreverse.java,然后是java-classpath。相反,它是有效的。同样做javac Reverse.java,那么java Reverse也可以工作。但我真的不知道类路径背后是什么,它是什么doing@B.A.,我刚刚更新了我的答案以解决您的编辑问题。@SotiriosDelimanolis,谢谢您的更正,我已经更新了答案。您如何用更简单的术语解释?这是否意味着classpath正在查看项目文件中的bin和src?如果您从命令行运行
java-classpath.
,它将只将当前目录添加到您的classpath中。注意单词add,而不是替换为。根据您的环境设置,类路径中可能有其他内容,但是如果您没有显式添加它们,
bin
src
应该或不应该在类路径中,则没有特定的原因。