java jar 没有主清单_java运行jar命令提示没有主清单属性

在JAVA中将class文件编译成jar文件包,运行提示没有主清单属性。这是怎么回事?

今天来教大家如何解决这个问题

1、在java中编译JAR文件的时候我们都会用到,jar这个命令。

当用着jar 文件时候我们不可少的是cvf这几个参数来生成jar文件。

但是用个文件来了,在用不使用工具的前提下我们生成的jar文件包后运行会出现。某某类的没有主清单属性。如下图:

d7a745ba1b2bc2d9e745bfd7226e8c06.png

2、这样的问题是因为,jar包中的META-INF文件夹下的MANIFEST.MF文件缺少定义jar接口类。说白了就是没有指定class类。这里说明一下MANIFEST.MF就是一个清单文件,通俗点将就相当于WINDOWS中ini配置文件。用来配置程序的一些信息,所以才造成这样的问题。

3、解决这个问题的方法就是要在MANIFEST.MF文件中添加一个入口类。即需要一个Main-Class定义行。更详细的MANIFEST.MF文件定义说明,请参考官方MANIFEST.MF文件定义手册。

下面是一个的MANIFEST.MF文件信息:

ce4621b14bb1bccd12d17165c64657e6.png

这个问题的最更本原因就如提示一样,没有主清单属性。所以解决办法很简单。就是在MANIFEST.MF添加入口。首先找到你的jar文件

d69649760e3f33e16ff04a1114038934.png

之后双击打开jar文件,你的电脑需要安装有winrar。或者其他压缩工具。 之后,再双击打开这个文件夹META-INF

2fc6190ad1d5909e4aba345de3568eb6.png

再选择MANIFEST.MF文件,用记事本打开它

095d500bd9d6a4a85a2ee3fcf9a38f83.png

现在看看文件中是否有Main-Class这样一行文字,如果没有的话那么添加一行。

Main-Class: gui 这里的gui是你的xxx.java文件编译后的xxx.class文件稍微名称。但是不要加.class后缀。

如果有的话,那么看下Main-Class: gui 这后面的名称是否和你的class文件名称一致。不一致请改回来。

注:这里Main-Class:要空一格写上你的class文件名。如果你没有空格的话,还是问题是解决不了的。

a716004766573304d9ae709427ffa74f.png

修改后,并保存,再次执行,一切OK。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值