Мы пытаемся собрать наш проект Clojure с Leiningen. Нам удалось создать uberjar, выполнив следующие действия:
предварительные условия:
: main my-project.core
в project.clj -main
(: gen-class: main true)
в ядре.clj процедура:
тест lein
; завершено без сбоев lein deps
; успешно завершено lein uberjar
java -jar BioClojure-1.0.0-SNAPSHOT-standalone.jar
, что привело к следующему исключению: Исключение в потоке "main" java.lang.SecurityException: недействительный дайджест файла подписи for Manifest main attributes
Мое исследование этой проблемы не принесло плодов. Судя по всему , это известная проблема, для которой нет хорошего решения. Я не понимаю там ответов.
Что нам нужно сделать, чтобы наш uberjar заработал?
zip * -standalone.jar -d META-INF / DUMMY.SF
(я понятия не имею, что это делает) : uberjar-exclusions
в файле project.clj? (если да, то какие?) Версии Lein и java:
$ lein version
Leiningen 1.6.1 on Java 1.6.0_26 Java HotSpot(TM) 64-Bit Server VM
Обновление: выполнение предложенной команды дает:
$ unzip -l BioClojure-1.0.0-SNAPSHOT-standalone.jar | grep -i -e "\.sf"
49911 08-27-09 15:57 META-INF/RCSB-PDB.SF
0 03-23-10 08:21 META-INF/maven/net.sf.alxa/
0 03-23-10 08:21 META-INF/maven/net.sf.alxa/jlatexmath/
929 03-23-10 08:20 META-INF/maven/net.sf.alxa/jlatexmath/pom.xml
115 03-21-10 14:01 META-INF/maven/net.sf.alxa/jlatexmath/pom.properties
175241 08-17-11 20:25 META-INF/SELFSIGN.SF
0 09-21-09 06:45 META-INF/maven/net.sf.opencsv/
0 09-21-09 06:45 META-INF/maven/net.sf.opencsv/opencsv/
5510 09-21-09 06:44 META-INF/maven/net.sf.opencsv/opencsv/pom.xml
106 09-21-09 06:45 META-INF/maven/net.sf.opencsv/opencsv/pom.properties