当我尝试运行这个程序时,我收到一个奇怪的错误.该类编译成多个.class文件,我上周编译它(编辑之前)就好了.但现在,我看到了这个:
Exception in thread "main" java.lang.ClassFormatError: Extra bytes at the end of class file blah/hooplah/fubar/nonsense/IndexId$Transaction
Run Code Online (Sandbox Code Playgroud)
从我看来,Java 6 build 1.5可以修复它,因为它允许类文件末尾的额外字节(我认为),但我宁愿使用build 1.6.
我正在Windows上进行编辑,然后将.java文件FTP到OpenVMS机器上,然后编译它们.在编译之后,我将.class文件移动到一个目录中,该目录是通过爆炸前一个jar文件然后重新jar.
关于这是如何发生或如何解决的任何明确的想法?
我正在尝试移植维基媒体插件以在OpenVMS上运行并需要更改类.我正在尝试使用jar更新jar中的.class文件jar uf jar-file .class-file,但是当我这样做时,我得到以下内容:
java.util.zip.ZipException: duplicate entry: META-INF/LICENSE.txt
at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:175)
at java.util.jar.JarOutputStream.putNextEntry(JarOutputStream.java:90)
at sun.tools.jar.Main.update(Main.java:507)
at sun.tools.jar.Main.run(Main.java:184)
Run Code Online (Sandbox Code Playgroud)
事实证明,jar中有2个LICENSE.txt文件,我似乎无法摆脱它们.
关于如何将新的.class文件放入jar或如何摆脱重复文件的任何想法?