我知道有很多类似于这个的线程,但我找不到解决我问题的线程。按照this
指令,我能够在终端中获取java并能够编译。我能够“javac main.java”没有错误,但是当我“java main.java”时,它只是说它could not find or load main class main.java
。我相信我的类路径是错误的,但我不完全确定如何解决这个问题。这是我输入echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/taka/.rvm/bin
当我输入echo $CLASSPATH
时,它没有显示任何内容。
我也尝试过java -cp ./ main.java,因为当我编译并运行HelloWorld.java时它似乎有用了
答案 0 :(得分:3)
如果您的javac
成功,则更新您的类路径环境变量并在类路径中添加当前目录,即.
,然后运行java
,如下所示:
java main
请注意:由于您需要运行.java
文件(在javac之后生成),并且未提及扩展名,因此没有.class
扩展名。 Java
使用生成的类文件来执行原始源文件。
答案 1 :(得分:1)
main.java
java是您的源代码。你无法在没有编译的情况下运行java源码。对于编译,您应该使用javac命令。之后,它将创建一个main.class文件,该文件可以通过解释器理解java
。
因此,您可以使用java main
或java main.class