Java:我的 .jar 文件已创建,但找不到主类?

标签 java class jar path manifest

我有以下步骤:

(1) 我在我的 Linux 主目录/home/a 下

(2)一个简单的java文件,cat m.java

 package my;
 public class m{
     public static void main(String[] args){
     }
 }

(3) javac m.java

(4) mkdir my && cp m.class my/

(5) $ 猫 list .mf

Manifest-Version: 1.0
Main-Class: my/m
Class-Path: /home/a

(6) jar cfm m.jar manifest.mf m.class

(7) java -jar m.jar

Error: Could not find or load main class m.class

如何让它发挥作用?

最佳答案

Main-Class应该是用点分隔的包,而不是 /

Main-Class: my.m

Main-Class: MyPackage.MyClass

删除 Class-Path如果您不需要更多 jar ,请行

Adding Classes to the JAR File's Classpath You may need to reference classes in other JAR files from within a JAR file.

关于Java:我的 .jar 文件已创建,但找不到主类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53394248/

相关文章:

java - 构建时资源图像未包含在 jar 中

java - SOAP 日志记录轴 2

java - 我在哪里可以找到 Eclipse 中 J2EE 应用程序的类路径

class - Scala:忽略等于/哈希码的案例类字段?

c++ - 更改外部类的 VTable

java - 如何使用 Gradle 引入所有依赖项 jar?

java - “找不到符号”或“无法解析符号”错误是什么意思?

java - ActivityManager : Exception thrown when launching activities java. lang.IllegalArgumentException : val. 长度 > 91

java - 自定义类加载问题

java - 配置 Maven Shade minimizeJar 以包含类文件