2014-07-07 37 views
2
[info] Merging files... 
[warn] Merging 'META-INF\INDEX.LIST' with strategy 'discard' 
[warn] Merging 'META-INF\MANIFEST.MF' with strategy 'discard' 

我正在嘗試使用sbt-assembly來組裝項目。我的項目中已經有一個jar文件,它有META-INF文件夾和MANIFEST.MF文件! sbt-assembly非常巧妙地選擇放棄衝突MANIFEST這當然是非常好的。但是,我不希望其他人使用-classpath,並且每次都必須鍵入主類,所以我想添加我自己的MANIFEST.MF文件並告訴sbt-assembly生成正確的文件。在ducplication上丟棄META-INF清單

我該怎麼做?謝謝!!

回答

1

我不希望其他人使用-classpath並在主類每次

自述這裏鍵入:

設置明確的主類,

mainClass in assembly := Some("com.example.Main") 
+0

謝謝你回答:)我已經設置了這個mainClass。這不是問題。問題是我在第三方jar中有一個重複的MANIFEST文件,所以sbt-assembly沒有創建我自己的MANIFEST文件! –

+0

好的。如果以上方法在庫依賴庫中的jar有自己的MANIFEST時不起作用,請打開一個Github問題。 –

+0

當我使用sbt-assembly 0.13.0時,發生了這個問題(設置mainClass似乎沒有效果),當我升級到0.14.2時,它就消失了。 – Brett