我有一個我在IntelliJ開發的Maven項目。當我從這個項目中建立一個.jar文件(一個神器,我需要我的調試工作星火)有在.jar文件這兩個文件:什麼是java jar文件中的ECLIPSEF.RSA和ECLIPSEF.SF?
/META-INF/ECLIPSEF.SF
/META-INF/ECLIPSEF.RSA
這些是什麼文件,爲什麼他們最終在我的jar文件?我問,因爲他們阻止我的Spark作業運行。
我有一個我在IntelliJ開發的Maven項目。當我從這個項目中建立一個.jar文件(一個神器,我需要我的調試工作星火)有在.jar文件這兩個文件:什麼是java jar文件中的ECLIPSEF.RSA和ECLIPSEF.SF?
/META-INF/ECLIPSEF.SF
/META-INF/ECLIPSEF.RSA
這些是什麼文件,爲什麼他們最終在我的jar文件?我問,因爲他們阻止我的Spark作業運行。
您是否使用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>
我是Java新手,說實話,不知道這個Maven遮罩插件是幹什麼的,IntelliJ是否在幕後使用它。否則我還沒有在IntelliJ中安裝任何插件 –
'maven-shade-plugin'字是否出現在你的'pom.xml'文件中? –
不,它不。但IntelliJ是否可以在幕後使用它來生成jar。 –
[找到這個(https://bugs.eclipse.org/bugs/show_bug的CGI?ID = 371954)。 – Kenney