16

I have installed ubuntu 14.04.02 x64, oracle jdk 1.8.4 and I try to run JavaFX8 project but I get this message in eclipse(not every time however):

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f69a19a4f78, pid=7035, tid=140090187572992
#
# JRE version: Java(TM) SE Runtime Environment (8.0_40-b25) (build 1.8.0_40-b25)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.40-b25 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# V  [libjvm.so+0x6c3f78]  jni_invoke_nonstatic(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*)+0x38
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x00007f699c28a800):  JavaThread "JavaFX Application Thread" [_thread_in_vm, id=7057, stack(0x00007f6949cde000,0x00007f6949ddf000)]

siginfo: si_signo: 11 (SIGSEGV), si_code: 128 (SI_KERNEL), si_addr: 0x0000000000000000

Registers:
RAX=0x00007f6949dd9b70, RBX=0x00007f6949dd9a80, RCX=0x0000000000000001, RDX=0x3b746e6576456e6f
RSP=0x00007f6949dd98d0, RBP=0x00007f6949dd9a50, RSI=0x00007f6949dd9ae0, RDI=0x00007f699c28a9f8
R8 =0x00007f699c1e3f28, R9 =0x00007f6949dd9a80, R10=0x0000000000000011, R11=0x00007f698d1fb000
R12=0x00007f699c28a800, R13=0x00007f699c1e3f28, R14=0x0000000000000001, R15=0x00007f699c28a9f8
RIP=0x00007f69a19a4f78, EFLAGS=0x0000000000010206, CSGSFS=0x0000000000000033, ERR=0x0000000000000000
  TRAPNO=0x000000000000000d

Top of Stack: (sp=0x00007f6949dd98d0)
0x00007f6949dd98d0:   00007f6949dd9f30 00007f698cdf8768
0x00007f6949dd98e0:   00007f6949dd9930 00007f6949dd99b0
0x00007f6949dd98f0:   00007f6949dd9a80 00007f6949dd9ae0
0x00007f6949dd9900:   00007f699c28a9f8 00007f69a19c4810
0x00007f6949dd9910:   00007f6960011a60 00007f6960011ae0
0x00007f6949dd9920:   00007f6960011e48 00000000000003d8
0x00007f6949dd9930:   00007f69880d4f08 00000000d8954d60
0x00007f6949dd9940:   000000000000006f 000000000000000a
0x00007f6949dd9950:   00000000d8c35188 00007f6900000000
0x00007f6949dd9960:   0000000000000000 00007f6949dd9a20
0x00007f6949dd9970:   00007f699c217040 0000000100000140
0x00007f6949dd9980:   00007f69880d4f08 00007f6949dd9938
0x00007f6949dd9990:   00007f6949dd9979 0000000800000005
0x00007f6949dd99a0:   00007f69880d4f00 00007f699c28a800
0x00007f6949dd99b0:   00007f69a2220590 00007f69a2d03470
0x00007f6949dd99c0:   00000000d8954a78 00007f69880d4f08
0x00007f6949dd99d0:   0000000000000000 00007f699c28a800
0x00007f6949dd99e0:   00007f69880dee68 00007f699c28a800
0x00007f6949dd99f0:   00007f69880dee68 00007f699c28a800
0x00007f6949dd9a00:   00007f6949dd9a50 00007f69880dee68
0x00007f6949dd9a10:   00007f69880dee68 00007f69880dee68
0x00007f6949dd9a20:   00007f699c28a9f8 00007f6949dd9a80
0x00007f6949dd9a30:   00007f699c28a800 00007f6949dd9ac0
0x00007f6949dd9a40:   00007f699c1e3f28 00007f699c28a9f8
0x00007f6949dd9a50:   00007f6949dd9b40 00007f69a19a971f
0x00007f6949dd9a60:   00007f699c28a800 00007f697eedcfc4
0x00007f6949dd9a70:   00007f6949dd9b50 3b746e6576456e6f
0x00007f6949dd9a80:   00007f69a22211f0 00007f69a2d03470
0x00007f6949dd9a90:   000000009c217040 0000000000000063
0x00007f6949dd9aa0:   0000000000000000 0000003000000018
0x00007f6949dd9ab0:   00007f6949dd9c30 00007f6949dd9b70
0x00007f6949dd9ac0:   00007f699c28a800 0000000000000000 

Instructions: (pc=0x00007f69a19a4f78)
0x00007f69a19a4f58:   00 00 48 85 d2 48 89 bd b0 fe ff ff 48 89 b5 a8
0x00007f69a19a4f68:   fe ff ff 4c 89 8d a0 fe ff ff 0f 84 10 09 00 00
0x00007f69a19a4f78:   4c 8b 22 4d 85 e4 0f 84 04 09 00 00 48 8b 45 10
0x00007f69a19a4f88:   48 8b 98 38 01 00 00 48 83 7b 18 f7 0f 87 06 06 

Register to memory mapping:

RAX=0x00007f6949dd9b70 is pointing into the stack for thread: 0x00007f699c28a800
RBX=0x00007f6949dd9a80 is pointing into the stack for thread: 0x00007f699c28a800
RCX=0x0000000000000001 is an unknown value
RDX=0x3b746e6576456e6f is an unknown value
RSP=0x00007f6949dd98d0 is pointing into the stack for thread: 0x00007f699c28a800
RBP=0x00007f6949dd9a50 is pointing into the stack for thread: 0x00007f699c28a800
RSI=0x00007f6949dd9ae0 is pointing into the stack for thread: 0x00007f699c28a800
RDI=0x00007f699c28a9f8 is an unknown value
R8 =0x00007f699c1e3f28 is an unknown value
R9 =0x00007f6949dd9a80 is pointing into the stack for thread: 0x00007f699c28a800
R10=0x0000000000000011 is an unknown value
R11=0x00007f698d1fb000 is at entry_point+32 in (nmethod*)0x00007f698d1fae90
R12=0x00007f699c28a800 is a thread
R13=0x00007f699c1e3f28 is an unknown value
R14=0x0000000000000001 is an unknown value
R15=0x00007f699c28a9f8 is an unknown value


Stack: [0x00007f6949cde000,0x00007f6949ddf000],  sp=0x00007f6949dd98d0,  free space=1006k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x6c3f78]  jni_invoke_nonstatic(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*)+0x38
V  [libjvm.so+0x6c871f]  jni_CallVoidMethodV+0x10f
C  [libglass.so+0x1b798]  JNIEnv_::CallVoidMethod(_jobject*, _jmethodID*, ...)+0x98
C  [libglass.so+0x19355]  WindowContextBase::process_key(_GdkEventKey*)+0x225
C  [libglass.so+0x22bf0]  WindowContextBase::im_filter_keypress(_GdkEventKey*)+0x1f0
C  [libglass.so+0x254d4]  process_events(_GdkEvent*, void*)+0x204
C  [libgdk-x11-2.0.so.0+0x591ec]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  com.sun.glass.ui.gtk.GtkApplication.enterNestedEventLoopImpl()V+0
j  com.sun.glass.ui.gtk.GtkApplication._enterNestedEventLoop()Ljava/lang/Object;+15
j  com.sun.glass.ui.Application.enterNestedEventLoop()Ljava/lang/Object;+14
j  com.sun.glass.ui.EventLoop.enter()Ljava/lang/Object;+42
j  com.sun.javafx.tk.quantum.QuantumToolkit.enterNestedEventLoop(Ljava/lang/Object;)Ljava/lang/Object;+107
j  javafx.stage.Stage.showAndWait()V+74
j  javafx.scene.control.HeavyweightDialog.showAndWait()V+11
j  javafx.scene.control.Dialog.showAndWait()Ljava/util/Optional;+41
j  classes.LoginDialog.showLoginDialog()V+10
j  controller.MainWindowController.buttAdministratorAction(Ljavafx/event/ActionEvent;)V+22
v  ~StubRoutines::call_stub
j  sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0
j  sun.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+100
J 856 C1 sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; (10 bytes) @ 0x00007f698d0ed304 [0x00007f698d0ed200+0x104]
J 855 C1 java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; (62 bytes) @ 0x00007f698d0ecd44 [0x00007f698d0ec960+0x3e4]
j  sun.reflect.misc.Trampoline.invoke(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+7
j  sun.reflect.GeneratedMethodAccessor1.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+40
J 856 C1 sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; (10 bytes) @ 0x00007f698d0ed304 [0x00007f698d0ed200+0x104]
J 855 C1 java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; (62 bytes) @ 0x00007f698d0ecd44 [0x00007f698d0ec960+0x3e4]
j  sun.reflect.misc.MethodUtil.invoke(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+20
j  javafx.fxml.FXMLLoader$MethodHandler.invoke([Ljava/lang/Object;)V+19
j  javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(Ljavafx/event/Event;)V+12
j  com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Ljavafx/event/Event;)V+51
J 1483 C1 com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Ljavafx/event/EventType;Ljavafx/event/Event;)Ljavafx/event/Event; (34 bytes) @ 0x00007f698d29fb94 [0x00007f698d29f640+0x554]
j  com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+8
j  com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+11
j  com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+29
J 1433 C1 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event; (101 bytes) @ 0x00007f698d288ec4 [0x00007f698d288d20+0x1a4]
j  com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+17
J 1433 C1 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event; (101 bytes) @ 0x00007f698d288ec4 [0x00007f698d288d20+0x1a4]
j  com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+17
J 1433 C1 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event; (101 bytes) @ 0x00007f698d288ec4 [0x00007f698d288d20+0x1a4]
j  com.sun.javafx.event.EventUtil.fireEventImpl(Ljavafx/event/EventDispatchChain;Ljavafx/event/EventTarget;Ljavafx/event/Event;)Ljavafx/event/Event;+10
j  com.sun.javafx.event.EventUtil.fireEvent(Ljavafx/event/EventTarget;Ljavafx/event/Event;)Ljavafx/event/Event;+37
j  javafx.event.Event.fireEvent(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V+30
j  javafx.scene.Node.fireEvent(Ljavafx/event/Event;)V+86
j  javafx.scene.control.Button.fire()V+15
j  com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(Ljavafx/scene/input/MouseEvent;)V+23
j  com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(Ljavafx/scene/input/MouseEvent;)V+83
j  com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(Ljavafx/event/Event;)V+5
j  com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(Ljavafx/event/Event;)V+5
j  com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Ljavafx/event/Event;)V+28
J 1483 C1 com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Ljavafx/event/EventType;Ljavafx/event/Event;)Ljavafx/event/Event; (34 bytes) @ 0x00007f698d29fb94 [0x00007f698d29f640+0x554]
j  com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+8
j  com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+11
j  com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+29
J 1433 C1 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event; (101 bytes) @ 0x00007f698d288ec4 [0x00007f698d288d20+0x1a4]
j  com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+17
J 1433 C1 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event; (101 bytes) @ 0x00007f698d288ec4 [0x00007f698d288d20+0x1a4]
j  com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+17
J 1433 C1 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event; (101 bytes) @ 0x00007f698d288ec4 [0x00007f698d288d20+0x1a4]
j  com.sun.javafx.event.EventUtil.fireEventImpl(Ljavafx/event/EventDispatchChain;Ljavafx/event/EventTarget;Ljavafx/event/Event;)Ljavafx/event/Event;+10
j  com.sun.javafx.event.EventUtil.fireEvent(Ljavafx/event/EventTarget;Ljavafx/event/Event;)Ljavafx/event/Event;+46
j  javafx.event.Event.fireEvent(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V+30
j  javafx.scene.Scene$MouseHandler.process(Ljavafx/scene/input/MouseEvent;Z)V+491
j  javafx.scene.Scene$MouseHandler.access$1500(Ljavafx/scene/Scene$MouseHandler;Ljavafx/scene/input/MouseEvent;Z)V+3
j  javafx.scene.Scene.impl_processMouseEvent(Ljavafx/scene/input/MouseEvent;)V+6
j  javafx.scene.Scene$ScenePeerListener.mouseEvent(Ljavafx/event/EventType;DDDDLjavafx/scene/input/MouseButton;ZZZZZZZZZ)V+46
j  com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run()Ljava/lang/Void;+438
j  com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run()Ljava/lang/Object;+1
v  ~StubRoutines::call_stub
j  java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0
j  com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$350()Ljava/lang/Void;+11
j  com.sun.javafx.tk.quantum.GlassViewEventHandler$$Lambda$208.get()Ljava/lang/Object;+4
j  com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(Ljava/util/function/Supplier;)Ljava/lang/Object;+18
j  com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(Lcom/sun/glass/ui/View;JIIIIIIIZZ)V+103
j  com.sun.glass.ui.View.handleMouseEvent(JIIIIIIIZZ)V+30
j  com.sun.glass.ui.View.notifyMouse(IIIIIIIZZ)V+181
v  ~StubRoutines::call_stub
j  com.sun.glass.ui.gtk.GtkApplication._runLoop(Ljava/lang/Runnable;Z)V+0
j  com.sun.glass.ui.gtk.GtkApplication.lambda$null$48(Ljava/lang/Runnable;Z)V+7
j  com.sun.glass.ui.gtk.GtkApplication$$Lambda$41.run()V+12
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

.. when my application runs this code:

ChangeRoot changeRoot = new ChangeRoot(Main.mainStage, CONSTANTS.ROOT_EMPLOYEE_WINDOW.string, "Employee panel", true);
changeRoot.doFadingTransition(borderPane, CONSTANTS.FADE_OUT.value, CONSTANTS.FADE_IN.value);

..

public class ChangeRoot{
    private boolean bChangeStageSize = true;
    private boolean bFadeStage = true;

    private String sNewTitle;
    private boolean bResizable;
    private Controller controller;
    private Stage primaryStage;
    private FXMLLoader loader;
    private Parent root;

    public ChangeRoot(Stage primaryStage, String sRoot, String sNewTitle, boolean bResizable){
        this.primaryStage = primaryStage;
        this.bResizable = bResizable;
        this.sNewTitle = sNewTitle;

        loader = new FXMLLoader(getClass().getResource(sRoot));

        try{
            root = loader.load();
            controller = loader.getController();
        }catch(IOException exception){
            ExceptionDialog exceptionDialog = new ExceptionDialog("Error while loading fxml file", exception);
            exceptionDialog.showAndWait();
        }
    }

    /**************************** PUBLIC METHODS *******************************/
    public Controller getController(){
        return controller;
    }

    public void doFadingTransition(Pane actualPane, double fadeOutMillis, double fadeInMillis){
        actualPane.setDisable(true);
        //fading out
        final DoubleProperty stageOpacity = Main.mainStage.opacityProperty();
        final DoubleProperty oldPaneOpacity = actualPane.opacityProperty();
        if(bFadeStage == true)
            oldPaneOpacity.bindBidirectional(stageOpacity);


        Timeline fadeOut = new Timeline(
            new KeyFrame(Duration.ZERO, new KeyValue(oldPaneOpacity, 1.0)),
            new KeyFrame(new Duration(fadeOutMillis), e -> {
                    if(bResizable == true)
                        Main.mainStage.setResizable(true);
                    else
                        Main.mainStage.setResizable(false);
                    if(bFadeStage == true)
                        oldPaneOpacity.unbindBidirectional(stageOpacity);
                        changeRootAndWindow();
                        fadeIn(fadeInMillis);
            },
            new KeyValue(oldPaneOpacity, 0.0) 
        ));

        fadeOut.play();
    }

    public final void changeRoot(){
         changeRootAndWindow();
    }

    /**************************** PRIVATE METHODS *******************************/
    private final void changeRootAndWindow(){ //it will do depending what was put to the constructor
        if(primaryStage.isMaximized() == true){
            primaryStage.setMaximized(false);
        }
        primaryStage.getScene().setRoot(root);
        primaryStage.setTitle(sNewTitle);

        if(bChangeStageSize == true){
            Main.mainStage.setHeight(controller.getMainPane().getPrefHeight() + 38);
            Main.mainStage.setWidth(controller.getMainPane().getPrefWidth() +16);
        }
    }
    private void fadeIn(double fadeInMillis){
        if(controller == null){
            ExceptionDialog exceptionDialog = new ExceptionDialog("insert controller class", new Exception());
            exceptionDialog.showAndWait();
        }

        final DoubleProperty newPaneOpacity = controller.getMainPane().opacityProperty();

        final DoubleProperty stageOpacity = Main.mainStage.opacityProperty();
        if(bFadeStage == true)
            newPaneOpacity.bindBidirectional(stageOpacity);

        Timeline fadeIn = new Timeline(
            new KeyFrame(Duration.ZERO, new KeyValue(newPaneOpacity, 0.0)),
            new KeyFrame(new Duration(fadeInMillis), actionEvent -> {
               if(bFadeStage == true)
                   newPaneOpacity.unbindBidirectional(stageOpacity);
            },
            new KeyValue(newPaneOpacity, 1.0)
        ));

        fadeIn.play();
    }
}

============================================================

It doesn't happen every time but most of it. Usually there is no problem right after I start eclipse and run my program for the first time.

I looked in the internet for the answer and tried this:

sudo unlink /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1

and also this:

I've tried adding the the below line to the end of eclipse.ini, but Eclipse can't start at all:

org.eclipse.swt.browser.DefaultType=mozilla
I think there is some typo error, the line should be:

-Dorg.eclipse.swt.browser.DefaultType=mozilla
and this worked for me.

but nothing helps.... I don't know what to do.

EDIT: There is no problem when I run the same code on Windows.

EDIT2 I have found out that when I use static variable like this:

Stage primaryStage = Main.primaryStage;
primaryStage.setMaximized(true);

this causes the error.

Tomasz Mularczyk
  • 34,501
  • 19
  • 112
  • 166
  • A colleague of mine had an very similar problem. we suspect any problems with the graphics card driver (or something like that). By turning off all FXEffects, this problem was gone...(this happend only on his system..also Ubuntu + any ATI-GFX) – Ben Apr 10 '15 at 19:48
  • When you say you've tried this in windows, have you tried this in Windows *with the exact same hardware*? Maybe dual booting from the same box? – durron597 Apr 10 '15 at 20:25
  • @durron597 I have installed Windows 8.1 and then Ubuntu 14.04 LTS on the same computer("next to windows" type of installation). It's not virtual box or something like that. – Tomasz Mularczyk Apr 10 '15 at 20:31
  • ["For Linux platforms, gtk2 2.18+ is required for supporting JavaFX."](http://www.oracle.com/technetwork/java/javase/certconfig-2095354.html). Are you running a compatible version of gtk? If so, log a [bug report against the runtime project](https://javafx-jira.kenai.com/secure/Dashboard.jspa). – jewelsea Apr 10 '15 at 20:41
  • @jewelsea I have installed this `2.24.23-0ubuntu1.1` and also this `3.10.8-0ubuntu1.4` version of gtk – Tomasz Mularczyk Apr 10 '15 at 20:56
  • You might want to give openJDK a try. – Katerina A. Apr 14 '15 at 12:22
  • @KaterinaA. also tried it, but didn't help. – Tomasz Mularczyk Apr 14 '15 at 14:16
  • @Tomek, I have deleted my answer because it seems it does not help your problem, in case you're looking for the chat room url, this is the [link](http://chat.stackoverflow.com/rooms/75418/discussion-between-kucing-terbang-and-tomek) – kucing_terbang Apr 17 '15 at 10:29
  • Justo to check, did you: "To enable core dumping, try "ulimit -c unlimited" before starting Java again" – Sertage Apr 17 '15 at 13:22
  • @Sertage no, I didn't. Is it important? – Tomasz Mularczyk Apr 17 '15 at 13:28
  • Honestly, I don't know. But it is on the eleventh line of the message. So, I thought it may be a solution. :S – Sertage Apr 17 '15 at 13:35
  • 1
    Update for anyone form future: Yes, it's still present in 1.0.8u141 and, probably, latter. The issue was bounced around and marked as duplicate of duplicate of closed issue, which wasn't fixed due to lack of feedback from original submitter. – Pavlus Jan 11 '19 at 20:22

3 Answers3

4

First of all, setting options for SWT won't help you when you're looking for JavaFX problems. SWT is only used inside of Eclipse. A JavaFX application is started as a new process and won't notice that SWT is used by another Java application on the same computer.

From the stack trace, it looks like a local event loop (GtkApplication.enterNestedEventLoopImpl) has detected an "key press" event (process_events -> WindowContextBase::process_key). There seems to be an event handler for this on the JavaFX side since the code next tries to call a void method (JNIEnv_::CallVoidMethod) and then it crashes.

I'm not sure how a static field could have an effect here; also key presses aren't rare, so this should be code which is well tested.

Also, JavaFX seems to use Gtk 2 (libgdk-x11-2.0.so.0) which means the themes for Gtk 3 which cause an endless stream of problems in SWT and Eclipse are out of the picture. But still, maybe you or someone selected a "nicer" theme for the desktop than the default used by Gtk 2. I suggest to:

  1. Try to reset the theme to the default
  2. Install the latest patches for your Linux
  3. Create a stripped down version of the code which just contains the problem.
  4. Try to run a "Hello World" app for JavaFX and some of the demos.
  5. If that fails, try to open a bug against OpenJDK: https://bugs.openjdk.java.net/secure/Dashboard.jspa
Aaron Digulla
  • 321,842
  • 108
  • 597
  • 820
1

Update

I have filled the bug report into javafx jira. the link is this (link to the bug).
And I have tried to reproduce my error on my laptop (mac with oracle jdk 1.8.0_45) and also tried with ubuntu in virtual box (ubuntu 14.04 with the same version of jdk) but the error didn't happen.

And the last time in chat room, you said you had a problem using open jdk in eclipse. so, could you try to run the application using open jdk but from command prompt? you could try to run it using this command (assuming you have configured the jdk properly).

java -cp .:controlsfx-8.20.8.jar:mysql-connector-java-5.1.35-bin.jar model.Main

seems like a bug of javafx link to duplicate bug. though it's marked as a duplicate of this issue link to original bug.

based on the status of the issues, the bug has been addressed, so maybe you could try to update your jdk to the latest version and see whether the issue still occur or not.

kucing_terbang
  • 4,991
  • 2
  • 22
  • 28
  • I have this java version "1.8.0_40" I think newer is 9 which is not yet recommended – Tomasz Mularczyk Apr 15 '15 at 19:55
  • I will print it soon. Please tell me or give me link how to update jdk from 1.8.0_40 to 1.8.0_45. I'm new to Ubuntu and I couldnt find the right answer. – Tomasz Mularczyk Apr 16 '15 at 10:55
  • `java version "1.8.0_40" Java(TM) SE Runtime Environment (build 1.8.0_40-b25) Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode) ` – Tomasz Mularczyk Apr 16 '15 at 11:05
  • I just run software updated and I see it is installing `jdk 1.8.0_45` I will try t run javaFX project after that and will see if anything changed. – Tomasz Mularczyk Apr 16 '15 at 11:44
  • I'm suprised but I stil get this problem even after update. `java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) ` – Tomasz Mularczyk Apr 16 '15 at 12:36
  • `ExceptionDialog extends Alert`. You think OpenJDK will help? I had it downloaded and tried it, but maybe I didn't set it properly. – Tomasz Mularczyk Apr 16 '15 at 14:21
  • Let us [continue this discussion in chat](http://chat.stackoverflow.com/rooms/75418/discussion-between-kucing-terbang-and-tomek). – kucing_terbang Apr 16 '15 at 15:50
0

This issue occurred to me when a TextInputDialog I had shown (before the primary stage is shown) had a CSS stylesheet which declared, using @font-face, a font file that I had deleted. By removing those outdated declarations, the problem stopped appearing for me.

It is interesting that the issue only occurred when I hit enter using the keyboard. Accepting the dialog with mouse did not cause the issue.

(JavaFX 18)

P.S. I have encountered this bug before as well, but few times. This issue that I fixed was causing this 100% of the times. There was also a "javafx.css.CssParser reportException WARNING: Please report java.lang.NullPointerException at:" error which made me able to trace it down by removing each stylesheet one by one.

Nand
  • 568
  • 3
  • 18