Unable to use Java 8 streams in Fuse

Solution Verified - Updated -

Issue

Would just like to check in addition the support for Java 8 streams mainly reduce(), map() and filter() in Apache Felix OSGI. Seems to be throwing an error during compilation however compiles fine when removed:

List<Integer> numbers...
Integer result = numbers.stream().reduce(0, (a, b) -> a + b);

I can see below information in when I build the project.

[INFO] --- maven-bundle-plugin:2.3.7:manifest (bundle-manifest) @ camel-blueprint ---
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 org.apache.felix.bundleplugin.ManifestPlugin.getAnalyzer(ManifestPlugin.java:206)
    at org.apache.felix.bundleplugin.ManifestPlugin.getManifest(ManifestPlugin.java:114)
    at org.apache.felix.bundleplugin.ManifestPlugin.execute(ManifestPlugin.java:69)
    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)

Are Java 8 streams supported in Fuse?

Environment

  • Red Hat JBoss Fuse 6.2.1

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content