JAVA 中JAR 运行出现invalid or corrupt jarfile,怎么解决?
路径什么的也配置了。 自己弄了个Helloworld.java 也能正常编译和打开, 就是JAR 包要怎么打开啊?
. 展开
每一个key(即冒号前面的字符串)的冒号的后面加上一个空格。也可能jar包文件损坏了,需要重新下载或者添加jar包。
在软件领域,JAR文件是一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源文件到一个文件,以便开发Java平台应用软件或库。
JAR文件是一种归档文件,以ZIP格式构建,以.jar为文件扩展名。用户可以使用JDK自带的jar命令创建或提取JAR文件。JAR文件内的文件名是Unicode文本。
扩展资料
一个可执行的jar 文件是一个自包含的 Java 应用程序,它存储在特别配置的JAR 文件中,可以由 JVM 直接执行它而无需事先提取文件或者设置类路径。
要运行存储在非可执行的 JAR 中的应用程序,必须将它加入到你的类路径中,并用名字调用应用程序的主类。但是使用可执行的 JAR 文件,我们可以不用提取它或者知道主要入口点就可以运行一个应用程序。可执行 JAR 有助于方便发布和执行 Java 应用程序。
参考资料来源:百度百科-jar
可能jar文件损坏了,你可以尝试用winrar打开这个jar文件,把它解压,看有没有报错,如果报错,说明文件损坏了。
打包成jar文件后运行出现Invalid or corrupt jarfile 解决
打jar包
1。jar -cvf hello。jar hello。class
2。这时java -jar hello。jar 是运行不了的
3。解压刚打的Jar包到新的目录,会发现里边多了一个META-INF文件夹里边有一个MANIFEST。MF文件
4。用记事本打开MANIFEST。MF文件,修改为
Manifest-Version: 1。0
Main-Class: Hello
Created-By: aaa
5。将MANIFEST。MF复制到和Hello。class 放在一起
然后打包:
jar cvfm abc。jarMANIFEST。MFHello。class
得到可运行的jar
java -jar *** 就可以运行的jar包[ 其中***为jar包名]
jar cvfm lottery.jar MANIFEST.MF jdbc.properties com
如果出现:
java.io.IOException: invalid header field
这样的错误的话,就说明MANIFEST.MF文件有问题,比如写成了这样:
Manifest-Version: 1.0
Main-Class:com.feishan.lottery.view.Index
Class-Path: jar/jdbc_feishan.jar jar/mysql5.0.3.jar
注意:
Main-Class:后面应该有一个空格:
Manifest-Version: 1.0
Main-Class: com.feishan.lottery.view.Index
Class-Path: jar/jdbc_feishan.jar jar/mysql5.0.3.jar
这样写就对了注意:最后一行也要有一个回车键。否则后面那一行是不能打包进去的
最后用java -jar lottery.jar就可以运行了
你这是打包的方法啊。 现在是别人已经打包完的, 下载下来却打不开啊。