gpt4 book ai didi

java - 无法运行简单编译的java程序?

转载 作者:行者123 更新时间:2023-12-01 17:38:34 25 4
gpt4 key购买 nike

我使用的是 Arch Linux,我刚刚安装了 JRE 和 JDK,所有正确的 bin 文件(javac 和 java)都位于/opt/java/bin/中

我只是编译了一个标准的 hello world,并使用 javac 运行 javac ./hello.java 编译它,并创建了一个类。

现在我的问题是运行它。我运行 java ./helloworld.class ,它给了我一个错误,即使我指向 java 的文件不存在:

Exception in thread "main" java.lang.NoClassDefFoundError: //helloworld/class
Caused by: java.lang.ClassNotFoundException: ..helloworld.class
(..omitted for clarity..)
Could not find the main class: ./helloworld.class. Program will exit.

您会注意到错误的第一行,它破坏了路径//helloworld/class

当我向 java 提供绝对路径时,即 java/home/foo/helloworld.class 它给出了相同的错误,但将路径的 / 替换为 . 在第一行,再次 munged。

你认为哪里不对?我真的不知道为什么要这样做..

最佳答案

当你运行java时,你只需向它传递完全限定的类名(包括包),而不是文件名。

java helloworld 将查找 helloworld.class。

java helloworld.class 将查找 helloworld/class.class

关于java - 无法运行简单编译的java程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3806108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com