eclipse / paho.mqtt-spy

mqtt-spy is an open source desktop & command line utility intended to help you with monitoring activity on MQTT topics
Other
620 stars 146 forks source link

.jar not executing on Ubuntu #70

Open David-Lor opened 5 years ago

David-Lor commented 5 years ago

Trying to run mqtt-spy under Ubuntu 18.04 x86_64:

$ java -jar mqtt-spy-1.0.1-beta-b18-jar-with-dependencies.jar 
Error: no se ha encontrado o cargado la clase principal pl.baczkowicz.mqttspy.Main
Causado por: java.lang.NoClassDefFoundError: javafx/application/Application

My translation:

$ java -jar mqtt-spy-1.0.1-beta-b18-jar-with-dependencies.jar 
Error: not found or not loaded main class pl.baczkowicz.mqttspy.Main
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

Java version:

$ java -version
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.3)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.3, mixed mode)

Tried with releases v1.0.1 beta18 & beta14

unimatrix099 commented 5 years ago

It seems that it's not working with OpenJDK, but it works with the one from Oracle...

skatsikeas commented 5 years ago

I have the same issue with:

openjdk version "12.0.1" 2019-04-16
OpenJDK Runtime Environment (build 12.0.1+12)
OpenJDK 64-Bit Server VM (build 12.0.1+12, mixed mode, sharing)

on MacOS Mojave

diegovisentin commented 5 years ago

Same issue with:

openjdk version "1.8.0_192"
OpenJDK Runtime Environment (build 1.8.0_192-201811210433-b12)
Eclipse OpenJ9 VM (build master-61a34f6be, JRE 1.8.0 Windows 10 amd64-64-Bit Compressed References 20181120_164 (JIT enabled, AOT enabled)
OpenJ9   - 61a34f6be
OMR      - 1b8bfbae
JCL      - 8ef74afc70 based on jdk8u192-b12)

on Windows 10 Enterprise, verison 1809. I think that the problem is that these JDKs don't have Java.FX as Oracle JDK. I also tried to build from scratch with maven but withour success. IMO this tool needs a clear documentation of requirements to run it using OpenJDK v8 (or explictly say that needs other modern versions).

olivm-fr commented 5 years ago

@diegovisentin For Windows, you may try the release here, it is bundled with an Oracle Java8 JRE (not installed at system level)

hemna commented 5 years ago

Doesn't work for me on openSUSE Leap 15.1 either.

[I] waboring@hemna-suse~/Desktop> java -jar mqtt-spy-1.0.1-beta-b18-jar-with-dependencies.jar                         (1) 16:42:04 
Error: Could not find or load main class pl.baczkowicz.mqttspy.Main

[I] waboring@hemna-suse~/Desktop> java -version                                                                       (1) 17:14:22 
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (IcedTea 3.12.0) (build 1.8.0_212-b4 suse-lp151.1.1-x86_64)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)

[I] waboring@hemna-suse~/Desktop> lsb_release -a                                                                          17:15:22 
LSB Version:    core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-x86_64:core-3.2-x86_64:core-4.0-x86_64:desktop-4.0-amd64:desktop-4.0-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0-amd64:graphics-4.0-noarch
Distributor ID: openSUSE
Description:    openSUSE Leap 15.1
Release:    15.1
Codename:   n/a
Ciruxx commented 5 years ago

Same issue on Manjaro Linux:

cy@superasus ~ % lsb_release -a
LSB Version:    n/a
Distributor ID: ManjaroLinux
Description:    Manjaro Linux
Release:    18.0.4
Codename:   Illyria

I have installed almost every version of java over 8...

cy@superasus ~ % archlinux-java status
Available Java environments:
  java-10-openjdk
  java-11-openjdk (default)
  java-12-jdk
  java-12-openjdk
  java-8-openjdk/jre

...but the message is the same with the beta version and the stable version (obviously also changing java version):

cy@superasus ~ % mqtt-spy 
Error: Could not find or load main class pl.baczkowicz.mqttspy.Main
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

( in this example mqtt-spy is an alias for java -jar mqtt-spy-1.0.1-beta-b18-jar-with-dependencies.jar)

This is the version of oracle java:

cy@superasus ~ % java -version                                                                        :(
java version "12.0.2" 2019-07-16
Java(TM) SE Runtime Environment (build 12.0.2+10)
Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)

This is the version of one openjdk:

cy@superasus ~ % java -version                          
openjdk version "11.0.4" 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11)
OpenJDK 64-Bit Server VM (build 11.0.4+11, mixed mode)

I have already installed JavaFX and the libraries should be in the correct place:

cy@superasus ~ % sudo pacman -Ql java-openjfx           
java-openjfx /usr/
java-openjfx /usr/lib/
java-openjfx /usr/lib/jvm/
java-openjfx /usr/lib/jvm/java-11-openjdk/
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.base.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.controls.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.fxml.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.graphics.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.media.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.swing.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/jmods/javafx.web.jmod
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx-swt.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.base.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.controls.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.fxml.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.graphics.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.media.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.properties
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.swing.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/javafx.web.jar
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libavplugin.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libdecora_sse.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libfxplugins.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libglass.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libglassgtk2.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libglassgtk3.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libgstreamer-lite.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libjavafx_font.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libjavafx_font_freetype.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libjavafx_font_pango.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libjavafx_iio.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libjfxmedia.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libjfxwebkit.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libprism_common.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libprism_es2.so
java-openjfx /usr/lib/jvm/java-11-openjdk/lib/libprism_sw.so
java-openjfx /usr/share/
java-openjfx /usr/share/licenses/
java-openjfx /usr/share/licenses/java-openjfx/
java-openjfx /usr/share/licenses/java-openjfx/javafx.base/
java-openjfx /usr/share/licenses/java-openjfx/javafx.base/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.base/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.base/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.controls/
java-openjfx /usr/share/licenses/java-openjfx/javafx.controls/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.controls/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.controls/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.fxml/
java-openjfx /usr/share/licenses/java-openjfx/javafx.fxml/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.fxml/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.fxml/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.graphics/
java-openjfx /usr/share/licenses/java-openjfx/javafx.graphics/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.graphics/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.graphics/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.graphics/jpeg_fx.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/applecoreaudio.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/glib.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/gstreamer.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.media/libffi.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.swing/
java-openjfx /usr/share/licenses/java-openjfx/javafx.swing/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.swing/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.swing/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/ADDITIONAL_LICENSE_INFO
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/ASSEMBLY_EXCEPTION
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/LICENSE
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/icu_web.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/libxml2.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/libxslt.md
java-openjfx /usr/share/licenses/java-openjfx/javafx.web/webkit.md

So, please, what can i do?

P.S. I think you should change the title of this issue..