Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8098075

libjavafx_font_freetype.so and libjavafx_font_pango.so are not build for embedded

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: emb-8u6, 8u20
    • Fix Version/s: 8u20
    • Component/s: javafx
    • Environment:

      Build for any embedded platform

      Description

      running:
      java -Djavafx.platform=monocle -Djava.ext.dirs=build/armv6hf-sdk/rt/lib/ext com.sun.glass.ui.monocle.linux.GetEvent
      works as expected.

      Running any applications against a oppen-jfx build throws exceptions
      (java -Djava.ext.dirs=build/armv6hf-sdk/rt/lib/ext ...) NoClassDefFoundError:

      Prism pipeline init order: es2 sw
      Using platform text rasterizer
      Using native-based Pisces rasterizer
      Using dirty region optimizations
      Using system sized mask for primitives
      Not forcing power of 2 sizes for textures
      Using hardware CLAMP_TO_ZERO mode
      Opting in for HiDPI pixel scaling
      Prism pipeline name = com.sun.prism.es2.ES2Pipeline
      Loading ES2 native library ... prism_es2_eglfb
      succeeded.
      GLFactory using com.sun.prism.es2.EGLFBGLFactory
      (X) Got class = class com.sun.prism.es2.ES2Pipeline
      Initialized prism pipeline: com.sun.prism.es2.ES2Pipeline
      Maximum supported texture size: 2048
      Non power of two texture support = true
      Graphics Vendor: Broadcom
             Renderer: VideoCore IV HW
              Version: OpenGL ES 2.0
       vsync: true vpipe: true
      Exception in Application start method
      Exception in thread "JavaFX Application Thread" java.lang.NoClassDefFoundError: Could not initialize class javafx.scene.CssStyleHelper
      at javafx.scene.Node.impl_processCSS(Node.java:8898)
      at javafx.scene.Parent.impl_processCSS(Parent.java:1240)
      at javafx.scene.Node.processCSS(Node.java:8753)
      at javafx.scene.Scene.doCSSPass(Scene.java:508)
      at javafx.scene.Scene.access$3700(Scene.java:140)
      at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2352)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:322)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:320)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:320)
      at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:349)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:481)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:462)
      at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:329)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      at java.lang.Thread.run(Thread.java:744)
      Exception in thread "JavaFX Application Thread" java.lang.NoClassDefFoundError: Could not initialize class javafx.scene.CssStyleHelper
      at javafx.scene.Node.impl_processCSS(Node.java:8898)
      at javafx.scene.Parent.impl_processCSS(Parent.java:1240)
      at javafx.scene.Node.processCSS(Node.java:8753)
      at javafx.scene.Scene.doCSSPass(Scene.java:508)
      at javafx.scene.Scene.access$3700(Scene.java:140)
      at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2352)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:322)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:320)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:320)
      at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:349)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:481)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:462)
      at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:329)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      at java.lang.Thread.run(Thread.java:744)
      Exception in thread "JavaFX Application Thread" java.lang.NoClassDefFoundError: Could not initialize class javafx.scene.CssStyleHelper
      at javafx.scene.Node.impl_processCSS(Node.java:8898)
      at javafx.scene.Parent.impl_processCSS(Parent.java:1240)
      at javafx.scene.Node.processCSS(Node.java:8753)
      at javafx.scene.Scene.doCSSPass(Scene.java:508)
      at javafx.scene.Scene.access$3700(Scene.java:140)
      at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2352)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:322)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:320)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:320)
      at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:349)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:481)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:462)
      at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:329)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      at java.lang.Thread.run(Thread.java:744)
      Exception in thread "JavaFX Application Thread" java.lang.NoClassDefFoundError: Could not initialize class javafx.scene.CssStyleHelper
      at javafx.scene.Node.impl_processCSS(Node.java:8898)
      at javafx.scene.Parent.impl_processCSS(Parent.java:1240)
      at javafx.scene.Node.processCSS(Node.java:8753)
      at javafx.scene.Scene.doCSSPass(Scene.java:508)
      at javafx.scene.Scene.access$3700(Scene.java:140)
      at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2352)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:322)
      at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:320)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:320)
      at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:349)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:481)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:462)
      at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:329)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      at java.lang.Thread.run(Thread.java:744)
      java.lang.reflect.InvocationTargetException
      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:483)
      at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:367)
      at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:305)
      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:483)
      at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767)
      Caused by: java.lang.RuntimeException: Exception in Application start method
      at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:894)
      at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:56)
      at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:158)
      at java.lang.Thread.run(Thread.java:744)
      Caused by: java.lang.ExceptionInInitializerError
      at javafx.scene.Node.impl_processCSS(Node.java:8898)
      at javafx.scene.Parent.impl_processCSS(Parent.java:1240)
      at javafx.scene.Node.processCSS(Node.java:8753)
      at javafx.scene.Scene.doCSSPass(Scene.java:508)
      at javafx.scene.Scene.preferredSize(Scene.java:1544)
      at javafx.scene.Scene.impl_preferredSize(Scene.java:1621)
      at javafx.stage.Window$9.invalidated(Window.java:750)
      at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:109)
      at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:143)
      at javafx.stage.Window.setShowing(Window.java:826)
      at javafx.stage.Window.show(Window.java:841)
      at javafx.stage.Stage.show(Stage.java:252)
      at helloworld.HelloWorld.start(HelloWorld.java:42)
      at com.sun.javafx.application.LauncherImpl$8.run(LauncherImpl.java:837)
      at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      ... 1 more
      Caused by: java.lang.NullPointerException
      at com.sun.javafx.font.PrismFontLoader.loadFont(PrismFontLoader.java:192)
      at javafx.scene.text.Font.<init>(Font.java:319)
      at javafx.scene.text.Font.getDefault(Font.java:86)
      at javafx.scene.CssStyleHelper.<clinit>(CssStyleHelper.java:1500)
      ... 22 more
      Exception in thread "JavaFX Application Thread" java.nio.BufferOverflowException
      at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:363)
      at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:342)
      at com.sun.glass.ui.monocle.Framebuffer.clearBufferContents(Framebuffer.java:77)
      at com.sun.glass.ui.monocle.linux.FBDevScreen.shutdown(FBDevScreen.java:150)
      at com.sun.glass.ui.monocle.NativePlatform.shutdown(NativePlatform.java:48)
      at com.sun.glass.ui.monocle.MonocleApplication.finishTerminating(MonocleApplication.java:354)
      at com.sun.glass.ui.Application.terminate(Application.java:390)
      at com.sun.javafx.tk.quantum.QuantumToolkit.exit(QuantumToolkit.java:690)
      at com.sun.javafx.application.PlatformImpl$10.run(PlatformImpl.java:465)
      at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      at java.lang.Thread.run(Thread.java:744)

      2.) running touchyfxy.jar (https://bitbucket.org/shemnon/touchyfxy) a BufferOverflowException is thrown:
      Prism pipeline init order: es2 sw
      Using platform text rasterizer
      Using native-based Pisces rasterizer
      Using dirty region optimizations
      Using system sized mask for primitives
      Not forcing power of 2 sizes for textures
      Using hardware CLAMP_TO_ZERO mode
      Opting in for HiDPI pixel scaling
      Prism pipeline name = com.sun.prism.es2.ES2Pipeline
      Loading ES2 native library ... prism_es2_eglfb
      succeeded.
      GLFactory using com.sun.prism.es2.EGLFBGLFactory
      (X) Got class = class com.sun.prism.es2.ES2Pipeline
      Initialized prism pipeline: com.sun.prism.es2.ES2Pipeline
      Maximum supported texture size: 2048
      Non power of two texture support = true
      Graphics Vendor: Broadcom
             Renderer: VideoCore IV HW
              Version: OpenGL ES 2.0
       vsync: true vpipe: true
      Exception in Application start method
      Exception in thread "JavaFX Application Thread" java.nio.BufferOverflowException
      at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:363)
      at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:342)
      at com.sun.glass.ui.monocle.Framebuffer.clearBufferContents(Framebuffer.java:77)
      at com.sun.glass.ui.monocle.linux.FBDevScreen.shutdown(FBDevScreen.java:150)
      at com.sun.glass.ui.monocle.NativePlatform.shutdown(NativePlatform.java:48)
      at com.sun.glass.ui.monocle.MonocleApplication.finishTerminating(MonocleApplication.java:354)
      at com.sun.glass.ui.Application.terminate(Application.java:390)
      at com.sun.javafx.tk.quantum.QuantumToolkit.exit(QuantumToolkit.java:690)
      at com.sun.javafx.application.PlatformImpl$10.run(PlatformImpl.java:465)
      at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      at java.lang.Thread.run(Thread.java:744)
      java.lang.reflect.InvocationTargetException
      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:483)
      at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:367)
      at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:305)
      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:483)
      at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767)
      Caused by: java.lang.RuntimeException: Exception in Application start method
      at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:894)
      at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:56)
      at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:158)
      at java.lang.Thread.run(Thread.java:744)
      Caused by: javafx.fxml.LoadException:
      file:/home/pi/open-jfx/touchyfxy-0.0.jar!/touchyfxy/touchyfxy.fxml:46

      at javafx.fxml.FXMLLoader.constructLoadException(FXMLLoader.java:2593)
      at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2571)
      at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2433)
      at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2401)
      at touchyfxy.Main.start(Main.java:48)
      at com.sun.javafx.application.LauncherImpl$8.run(LauncherImpl.java:837)
      at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301)
      at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298)
      at java.security.AccessController.doPrivileged(Native Method)
      at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298)
      at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:80)
      at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:47)
      ... 1 more
      Caused by: java.lang.NullPointerException
      at com.sun.javafx.font.PrismFontLoader.loadFont(PrismFontLoader.java:192)
      at javafx.scene.text.Font.<init>(Font.java:319)
      at com.sun.javafx.fxml.builder.JavaFXFontBuilder.build(JavaFXFontBuilder.java:75)
      at com.sun.javafx.fxml.builder.JavaFXFontBuilder.build(JavaFXFontBuilder.java:42)
      at javafx.fxml.FXMLLoader$ValueElement.processEndElement(FXMLLoader.java:757)
      at javafx.fxml.FXMLLoader.processEndElement(FXMLLoader.java:2815)
      at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2524)
      ... 12 more

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              ddhill David Hill (Inactive)
              Reporter:
              filterpunjfx FilterPunk (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Imported: