Details
-
Bug
-
Resolution: Done
-
Major
-
9.0.0
-
None
Description
It looks like there is bug in maven-bundle-plugin 2.3.7.
When I created new fuse integration project and added following java8 stream expression:
Arrays.asList(featuresService.listFeatures())
.stream()
.map(f -> f.getName())
.sorted()
.forEach(System.out::println);
maven complained during bundle creation maven clean package:
[INFO] --- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ features-export --- [INFO] No sources to compile [INFO] [INFO] --- maven-surefire-plugin:2.19.1:test (default-test) @ features-export --- [INFO] No tests to run. [INFO] [INFO] --- maven-bundle-plugin:2.3.7:bundle (default-bundle) @ features-export --- java.lang.ArrayIndexOutOfBoundsException: 18 at aQute.lib.osgi.Clazz.parseClassFile(Clazz.java:448) at aQute.lib.osgi.Clazz.parseClassFile(Clazz.java:369) at aQute.lib.osgi.Clazz.parseClassFileWithCollector(Clazz.java:359) at aQute.lib.osgi.Clazz.parseClassFile(Clazz.java:349) at aQute.lib.osgi.Analyzer.analyzeJar(Analyzer.java:1725) at aQute.lib.osgi.Analyzer.analyzeBundleClasspath(Analyzer.java:1595) at aQute.lib.osgi.Analyzer.analyze(Analyzer.java:124) at aQute.lib.osgi.Builder.analyze(Builder.java:306) at aQute.lib.osgi.Analyzer.calcManifest(Analyzer.java:301) at aQute.lib.osgi.Builder.build(Builder.java:73) at org.apache.felix.bundleplugin.BundlePlugin.buildOSGiBundle(BundlePlugin.java:547) at org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:347) at org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:264) at org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:255) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 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:862) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286) at org.apache.maven.cli.MavenCli.main(MavenCli.java:197) 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) [ERROR] Bundle org.jboss.fuse.qa:features-export:bundle:1.0.0-SNAPSHOT : Exception: 18 [ERROR] Bundle org.jboss.fuse.qa:features-export:bundle:1.0.0-SNAPSHOT : Invalid class file: org/jboss/fuse/qa/features/FeaturesExport.class [ERROR] Error(s) found in bundle configuration
Bumping plugin version to latest upstream 3.2.0 fixed the issue.
Would it make sense to bump plugin version in fuse integration project template ?
Zip with project attached (features-export-4b33019c318d6dfb27dfa072dfb0e469d821e821.zip.
See properties section of pom.xml and try to switch between maven-bundle-plugin version.