You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Chris Heisterkamp (JIRA)" <ji...@codehaus.org> on 2015/01/06 02:08:10 UTC
[jira] (MSHADE-183) Getting "Error creating shaded jar:
java.util.jar.Attributes cannot be cast to java.lang.String" error when
using ManifestResourceTransformer with Maven 3.2.5
Chris Heisterkamp created MSHADE-183:
----------------------------------------
Summary: Getting "Error creating shaded jar: java.util.jar.Attributes cannot be cast to java.lang.String" error when using ManifestResourceTransformer with Maven 3.2.5
Key: MSHADE-183
URL: https://jira.codehaus.org/browse/MSHADE-183
Project: Maven Shade Plugin
Issue Type: Bug
Reporter: Chris Heisterkamp
Attachments: manifest_resource_transformer_error.diff
If you are using the ManifestResourceTransformer with empty values in the configuration you will get a "Error creating shaded jar: java.util.jar.Attributes cannot be cast to java.lang.String" error with Maven 3.2.5.
Here as an example config that causes the problem
{{
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Main-Class>com.mycompany.app.App</Main-Class>
<Implementation-Build></Implementation-Build>
</manifestEntries>
</transformer>
</transformers>
</configuration>
}}
I'm not sure what changed in populating the manifestEntries map but it looks like the manifestEntries.entrySet() in ManifestResourceTransformer is now getting back Attributes objects for the null values instead of null. When the transformer calls getValue() on the Attributes object you get the error.
The fix was to make manifestEntries a Map<String, Object> instead of Map<String, Attributes>.
--
This message was sent by Atlassian JIRA
(v6.1.6#6162)