SecurityException
появляется, потому что одна из ваших зависимостей - подписанный jar.Когда плагин Shade переупаковывает этот jar-файл, он становится недействительным.-> SecurityException
при запуске
Чтобы решить эту проблему, вы должны unsign заполнить зависимости при их перепаковке.Это можно сделать, просто не перепаковывая файлы, которые делают банку подписанной, используя фильтр:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>stand-alone</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>stand-alone</shadedClassifierName>
<filters>
<filter>
<!--
Exclude files that sign a jar
(one or multiple of the dependencies).
One may not repack a signed jar without
this, or you will get a
SecurityException at program start.
-->
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.RSA</exclude>
<exclude>META-INF/*.INF</exclude> <!-- This one may not be required -->
</excludes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>
Это решение было извлечено отсюда: https://issues.apache.org/jira/browse/MSHADE-61