Java 创建着色jar时出错:null:IllegalArgumentException

Java 创建着色jar时出错:null:IllegalArgumentException,java,maven,maven-shade-plugin,Java,Maven,Maven Shade Plugin,我在项目中使用ASM6.1动态生成类文件。但是我在组装一个胖罐子时遇到了一个问题 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.4.3:shade (default-cli) on project uetlx: Error creating shaded jar: null: IllegalArgumentException -> [Help 1] org.apache.maven.

我在项目中使用ASM6.1动态生成类文件。但是我在组装一个胖罐子时遇到了一个问题

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.4.3:shade (default-cli) on project uetlx: Error creating shaded jar: null: IllegalArgumentException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.4.3:shade (default-cli) on project uetlx: Error creating shaded jar: null
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error creating shaded jar: null
        at org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:540)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
        ... 20 more
Caused by: java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(Unknown Source)
        at org.objectweb.asm.ClassReader.<init>(Unknown Source)
        at org.objectweb.asm.ClassReader.<init>(Unknown Source)
        at org.apache.maven.plugins.shade.DefaultShader.addRemappedClass(DefaultShader.java:415)
        at org.apache.maven.plugins.shade.DefaultShader.shadeSingleJar(DefaultShader.java:219)
        at org.apache.maven.plugins.shade.DefaultShader.shadeJars(DefaultShader.java:179)
        at org.apache.maven.plugins.shade.DefaultShader.shade(DefaultShader.java:104)
        at org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:454)
        ... 22 more
[ERROR]无法在项目uetlx上执行goal org.apache.maven.plugins:maven shade plugin:2.4.3:shade(默认cli):创建着色jar时出错:null:IllegalArgumentException->[Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException:未能在项目uetlx上执行目标org.apache.maven.plugins:maven shade plugin:2.4.3:shade(默认cli):创建着色jar时出错:null
位于org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
位于org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
位于org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
位于org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
位于org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
位于org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
位于org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
位于org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
位于org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
位于org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
位于org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.codehaus.plexus.classworlds.launcher.launcher.launchEnhanced(launcher.java:289)
位于org.codehaus.plexus.classworlds.launcher.launcher.launch(launcher.java:229)
位于org.codehaus.plexus.classworlds.launcher.launcher.mainWithExitCode(launcher.java:415)
位于org.codehaus.plexus.classworlds.launcher.launcher.main(launcher.java:356)
原因:org.apache.maven.plugin.MojoExecutionException:创建着色jar时出错:null
位于org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:540)
位于org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
位于org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
... 20多
原因:java.lang.IllegalArgumentException
位于org.objectweb.asm.ClassReader。(未知来源)
位于org.objectweb.asm.ClassReader。(未知来源)
位于org.objectweb.asm.ClassReader。(未知来源)
位于org.apache.maven.plugins.shade.DefaultShader.addRemappedClass(DefaultShader.java:415)
位于org.apache.maven.plugins.shade.DefaultShader.shadeSingleJar(DefaultShader.java:219)
位于org.apache.maven.plugins.shade.DefaultShader.shadeJars(DefaultShader.java:179)
位于org.apache.maven.plugins.shade.DefaultShader.shade(DefaultShader.java:104)
位于org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:454)
... 还有22个

这是什么意思?一些冲突
objectweb.asm
version?解决方案是什么?

我在版本2.4.3中遇到了同样的问题。升级到插件的最新版本(目前为3.2.1)就解决了这个问题。

只是想说明一下,升级到插件的最新版本也解决了这个问题。我的问题是,我发现的示例使用的是旧版本,我没有考虑升级它,只是通过配置来解决我的问题。现在,我将更加认真地寻找最新的升级和新的配置。

首先,为什么要使用maven shade插件的旧版本?此外,您运行的是哪个JDK?@khmarbaise正如您所猜测的,问题在于旧插件版本。谢谢,我碰到了同样的问题。升级Maven shade插件版本解决了这个问题。谢谢谢谢3.1.0版对我有效,我在
3.0.0
升级到
3.2.1
时遇到了问题,解决了这个问题。