2016-02-29 57 views
1

我有一個我在IntelliJ開發的Maven項目。當我從這個項目中建立一個.jar文件(一個神器,我需要我的調試工作星火)有在.jar文件這兩個文件:什麼是java jar文件中的ECLIPSEF.RSA和ECLIPSEF.SF?

/META-INF/ECLIPSEF.SF 
/META-INF/ECLIPSEF.RSA 

這些是什麼文件,爲什麼他們最終在我的jar文件?我問,因爲他們阻止我的Spark作業運行。

+0

[找到這個(https://bugs.eclipse.org/bugs/show_bug的CGI?ID = 371954)。 – Kenney

回答

1

您是否使用maven shade插件?這些是jar簽名,它確保jar沒有被篡改。如果您使用maven的遮陽簾插件,你需要帶他們出去,因爲你是有意改變的jar:

<filter> 
    <artifact>*:*</artifact> 
    <excludes> 
     <exclude>META-INF/*.SF</exclude> 
     <exclude>META-INF/*.DSA</exclude> 
     <exclude>META-INF/*.RSA</exclude> 
    </excludes> 
</filter> 
+0

我是Java新手,說實話,不知道這個Maven遮罩插件是幹什麼的,IntelliJ是否在幕後使用它。否則我還沒有在IntelliJ中安裝任何插件 –

+0

'maven-shade-plugin'字是否出現在你的'pom.xml'文件中? –

+0

不,它不。但IntelliJ是否可以在幕後使用它來生成jar。 –

相關問題