Обновление файла .class в jar вызывает исключение - PullRequest
2 голосов
/ 03 июня 2010

Я пытаюсь портировать плагин Викимедиа для запуска на OpenVMS и необходимо изменить класс. Я пытаюсь обновить файл .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)

Оказывается, в банке 2 файла LICENSE.txt, и я не могу избавиться от них.

Любые идеи о том, как просто вставить новый файл .class в банку или как избавиться от дубликата файла?

1 Ответ

5 голосов
/ 03 июня 2010

JAR-файл - это просто zip-архив, поэтому разархивируйте JAR-файл и переупакуйте его. Или откройте его с помощью любой графической утилиты zip-файла и удалите повторяющуюся запись.

...