You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Karl Heinz Marbaise (Jira)" <ji...@apache.org> on 2019/12/15 19:48:00 UTC

[jira] [Comment Edited] (MSHADE-337) Relocation cannot process class file version 58 JARs

    [ https://issues.apache.org/jira/browse/MSHADE-337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16996856#comment-16996856 ] 

Karl Heinz Marbaise edited comment on MSHADE-337 at 12/15/19 7:47 PM:
----------------------------------------------------------------------

We need to check if there is an updated version of asm package. Based on the web site there is a newer version available (7.2)
https://asm.ow2.io/versions.html so you can as a first step overwrite the version via dependency in your plugin configuration like this:
Current master already contains an updated version.
{code:xml}
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-shade-plugin</artifactId>
              <dependencies>
                <dependency>
                  <groupId>org.ow2.asm</groupId>
                  <artifactId>asm</artifactId>
                  <version>7.2</version>
                </dependency>
                <dependency>
                  <groupId>org.ow2.asm</groupId>
                  <artifactId>asm-commons</artifactId>
                  <version>7.2</version>
                </dependency>
              </dependencies>
            </plugin>
          </plugins>
{code}
This should help until the new release of maven-shade-plugin has been done.


was (Author: khmarbaise):
We need to check if there is an updated version of asm package. Based on the web site there is a newer version available (7.2)
https://asm.ow2.io/versions.html so you can as a first step overwrite the version via dependency in your plugin configuration like this:
Current master already contains an updated version.
{code:xml}
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-shade-plugin</artifactId>
              <dependencies>
                <dependency>
                  <groupId>org.ow2.asm</groupId>
                  <artifactId>asm</artifactId>
                  <version>7.2</version>
                </dependency>
                <dependency>
                  <groupId>org.ow2.asm</groupId>
                  <artifactId>asm-commons</artifactId>
                  <version>7.2</version>
                </dependency>
              </dependencies>
            </plugin>
          </plugins>
{code}
This should help until the new release of maven-shade-plugin has been done.

> Relocation cannot process class file version 58 JARs
> ----------------------------------------------------
>
>                 Key: MSHADE-337
>                 URL: https://issues.apache.org/jira/browse/MSHADE-337
>             Project: Maven Shade Plugin
>          Issue Type: Bug
>    Affects Versions: 3.2.1
>            Reporter: Jordan Zimmerman
>            Priority: Major
>         Attachments: shade-bug.zip
>
>
> I was playing around with Java 14 and was making a shaded JAR. The shade plugin seems to work fine but if I add a relocation it throws:
> {noformat}
> java.lang.IllegalArgumentException: Unsupported class file major version 58
> {noformat}
> Steps to Reproduce:
> * Unzip the enclosed attachment
> * Make sure Java 14 is installed and JAVA_HOME points at it
> * Run {{mvn package}}
> Stacktrace:
> {noformat}
> Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 58
>     at org.objectweb.asm.ClassReader.<init> (ClassReader.java:184)
>     at org.objectweb.asm.ClassReader.<init> (ClassReader.java:166)
>     at org.objectweb.asm.ClassReader.<init> (ClassReader.java:152)
>     at org.objectweb.asm.ClassReader.<init> (ClassReader.java:273)
>     at org.apache.maven.plugins.shade.DefaultShader.addRemappedClass (DefaultShader.java:438)
>     at org.apache.maven.plugins.shade.DefaultShader.shadeSingleJar (DefaultShader.java:240)
>     at org.apache.maven.plugins.shade.DefaultShader.shadeJars (DefaultShader.java:196)
>     at org.apache.maven.plugins.shade.DefaultShader.shade (DefaultShader.java:106)
>     at org.apache.maven.plugins.shade.mojo.ShadeMojo.execute (ShadeMojo.java:442)
>     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
> {noformat}
> Notes:
> * I tried to make the example as minimal as possible
> * The relocation patterns don't see to matter. The issue is in the relocator code opening a JAR dependency I guess



--
This message was sent by Atlassian Jira
(v8.3.4#803005)