私はWindowsで作成したJavaFXアプリケーションをUbuntuで動作させるようにしています。私は.jarファイルを作成しましたが、Windows 10では正常に動作しますが、Ubuntuでは動作しません。デスクトップから(実行可能ファイルとして実行を有効にして)ダブルクリックしても、ターミナルから実行しても、メインクラスが見つからないというエラーが表示され続けます。 Javacも機能せず、同じ種類のエラーが発生します。これは私のマニフェストファイルです。
Manifest-Version: 1.0
Implementation-Title:
Implementation-Version:
Permissions: sandbox
JavaFX-Version: 8.0
Class-Path:
Created-By: JavaFX Packager
Implementation-Vendor:
Main-Class: Main
インストールしましたJava apt install default-jre
コマンド。何か案は?
これは、実行中に発生するエラーですJava -jar myApp.jar
:
Could not find or load main class Main
Caused by: Java.lang.NoClassDefFoundError: javarx/application/Application
一部の人々が指摘したように必要なjavafxをインストールした後、それはまだ動作しません。 Java
コマンドを実行しても同じ結果が得られます(上記を参照)。 javac
コマンドの実行例をいくつか示します。
javac myApp.jar
またはjavac myApp
error: Class names, 'myApp.jar', are only accepted if annotation processing is explicitly requested
javac -cp myApp.jar
またはjavac -cp myApp
javac: no source files
Ubuntu 18.04またはUbuntu 18.10を使用していると思います。 Java 11 as default-jre。Java 11にはJava FXがありません。個別にインストールする必要があります= Java UbuntuでのFXランタイム、またはJava FXの必要なすべてのライブラリ(モジュール)をアプリ内にMavenまたはGradleでパックします。パックするには、ビルドを行う必要があります。 Linux(Ubuntu)の内部では、Maven/GradleがLinux用のlibをダウンロードするため、ビルドはOSごとです。
詳細: https://stackoverflow.com/questions/52013505/how-do-i-use-javafx-11-in-Eclipse/52015953#5201595
Java FX 11: https://openjfx.io/openjfx-docs/#install-Java に関する詳細情報
アプリがJava 8(Java 1.8)で作成され、Java FXを含み、Javaに変更したくない場合= 11次に、Openをインストールする必要がありますJava 8をUbuntuにインストールし、openjfxをインストールします
もう1つの解決策は、JavaFxを含むUbuntuのOracle Java 8をインストールすることです。
Javaのインストール方法の詳細: https://www.digitalocean.com/community/tutorials/how-to-install-Java-with-apt-on-ubuntu-18-04
お役に立てば幸いです。
幸運を祈ります!