[英]Leiningen has problems building a working uberjar
我們正在嘗試與Leiningen建立Clojure項目。 通過執行以下操作,我們成功創建了uberjar:
前提條件:
:main my-project.core
中的:main my-project.core
project.core -main
功能 (:gen-class :main true)
在core.clj中 程序:
lein test
; 沒有失敗的完成 lein deps
成功完成 lein uberjar
java -jar BioClojure-1.0.0-SNAPSHOT-standalone.jar
,導致此異常: 線程“主”中的異常java.lang.SecurityException:清單主要屬性的無效簽名文件摘要
我對這個問題的研究並未取得成果。 顯然 ,這是一個已知的問題,沒有好的解決方案。 我不明白那里的答案。
為了使uberjar正常工作,我們需要做什么?
zip *-standalone.jar -d META-INF/DUMMY.SF
(我不知道這是做什么的) :uberjar-exclusions
做什么? (如果是,那是什么?) 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
通過閱讀該問題的評論,我的理解是,如果將以下內容添加到project.clj
,您的問題將會消失。
:uberjar-exclusions [#"foo.sf"]
其中foo.sf
是您要從jar中忽略的特定foo.sf
文件。 您可以通過運行以下命令來確定:
unzip -l BioClojure-1.0.0-SNAPSHOT-standalone.jar | grep -i -e "\.sf"
建議的zip
命令從jar中刪除特定文件(ZIP格式)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.