正在尝试编译代码 - 无法找到或加载 main class a

Trying to compile code - Could not find or load main class a

所以我查阅了很多关于如何编译代码的教程。我试着关注他们所有人。但我一直收到那个错误。这是我的代码:

package ytho;

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


}

这是我为 manifest.txt 设置的内容:

Main-Class: a

我也试过把它写成Main-Class: .aMain-Class: ytho.a,但没有用。 很抱歉这是重复的,但这里的所有其他教程都不适合我。所以,我决定最后问问自己。帮助将不胜感激。如果您需要更多信息,请告诉我,但我可能会迟到回复。

在您的清单中,您缺少 class名称中的包裹:

Main-Class: ytho.a

有关详细信息,请参阅此 link:https://docs.oracle.com/javase/tutorial/deployment/jar/appman.html

此外,您不应该将 class 命名为全部小写(或与此相关的单个字符)。将其命名为有意义的东西,例如 JarTest.class 或

让我们一步一步来:

  1. 用你的包名创建一个文件夹
  2. a class 重命名为 A 因为 java 在第一个字母上使用大写字母(这是文体)
  3. 编译你的文件javac ytho/A.java
  4. 创建 jar jar cvfm MyJarName.jar MANIFEST.MF *

这是我的目录的样子

.
├── MANIFEST.MF
├── MyJarName.jar
└── ytho
    ├── A.class
    └── A.java

这是清单的内容

Main-Class: ytho.A

而运行是这样的:

$: java -jar MyJarName.jar 

打印出来

ytho