2017-07-15 14 views
0

ローカルJavaFXアプリケーションを作成したいが、ファイルへのパスを設定する方法がわからないので、jarをビルドするときに問題はありません。ローカルプロジェクトのJavaFXでパスを設定する方法

私はjarファイルを作成し、できるだけ多くのエラーを修正しようとしましたが、修正できないものがまだあります。

ここにソースフォルダのpicがあります。

これらは私が

Exception in Application start method 
java.lang.reflect.InvocationTargetException 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389) 
     at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at sun.launcher.LauncherHelper$FXHelper.main(Unknown Source) 
Caused by: java.lang.RuntimeException: Exception in Application start method 
     at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917) 
     at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$155(LauncherImpl.java:182) 
     at java.lang.Thread.run(Unknown Source) 
Caused by: javafx.fxml.LoadException: 
file:/D:/Users/eebal/IdeaProjects/Recetario/out/artifacts/Recetario/Recetario.jar!/sample/home.fxml 

     at javafx.fxml.FXMLLoader.constructLoadException(FXMLLoader.java:2601) 
     at javafx.fxml.FXMLLoader.importClass(FXMLLoader.java:2848) 
     at javafx.fxml.FXMLLoader.processImport(FXMLLoader.java:2692) 
     at javafx.fxml.FXMLLoader.processProcessingInstruction(FXMLLoader.java:2661) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2517) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2441) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3214) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3175) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3148) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3124) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3104) 
     at javafx.fxml.FXMLLoader.load(FXMLLoader.java:3097) 
     at sample.Main.start(Main.java:21) 
     at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$162(LauncherImpl.java:863) 
     at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$175(PlatformImpl.java:326) 
     at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294) 
     at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) 
     at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) 
     at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) 
     ... 1 more 
Caused by: java.lang.ClassNotFoundException: com.jfoenix.controls.JFXButton 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at javafx.fxml.FXMLLoader.loadTypeForPackage(FXMLLoader.java:2916) 
     at javafx.fxml.FXMLLoader.loadType(FXMLLoader.java:2905) 
     at javafx.fxml.FXMLLoader.importClass(FXMLLoader.java:2846) 
     ... 20 more 
Exception running application sample.Main 

D:\Users\eebal\IdeaProjects\Recetario\out\artifacts\Recetario>java -jar Recetario.jar 
Exception in Application start method 
java.lang.reflect.InvocationTargetException 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389) 
     at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at sun.launcher.LauncherHelper$FXHelper.main(Unknown Source) 
Caused by: java.lang.RuntimeException: Exception in Application start method 
     at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917) 
     at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$155(LauncherImpl.java:182) 
     at java.lang.Thread.run(Unknown Source) 
Caused by: javafx.fxml.LoadException: 
file:/D:/Users/eebal/IdeaProjects/Recetario/out/artifacts/Recetario/Recetario.jar!/sample/home.fxml 

     at javafx.fxml.FXMLLoader.constructLoadException(FXMLLoader.java:2601) 
     at javafx.fxml.FXMLLoader.importClass(FXMLLoader.java:2848) 
     at javafx.fxml.FXMLLoader.processImport(FXMLLoader.java:2692) 
     at javafx.fxml.FXMLLoader.processProcessingInstruction(FXMLLoader.java:2661) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2517) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2441) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3214) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3175) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3148) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3124) 
     at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3104) 
     at javafx.fxml.FXMLLoader.load(FXMLLoader.java:3097) 
     at sample.Main.start(Main.java:21) 
     at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$162(LauncherImpl.java:863) 
     at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$175(PlatformImpl.java:326) 
     at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294) 
     at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) 
     at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) 
     at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) 
     ... 1 more 
Caused by: java.lang.ClassNotFoundException: com.jfoenix.controls.JFXButton 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at javafx.fxml.FXMLLoader.loadTypeForPackage(FXMLLoader.java:2916) 
     at javafx.fxml.FXMLLoader.loadType(FXMLLoader.java:2905) 
     at javafx.fxml.FXMLLoader.importClass(FXMLLoader.java:2846) 
     ... 20 more 
Exception running application sample.Main 

これはあなたのエラーログがCaused by: java.lang.ClassNotFoundException: com.jfoenix.controls.JFXButton言うメインParent home = FXMLLoader.load(getClass().getResource("home.fxml"));

答えて

0

で21行目であるがありますエラーです。これは、クラスが見つかりませんでしたので、fxmlをロードできなかったことを意味します。 jfoenixのライブラリのインポートに問題があると思うか、JFXButtonのインポートをFXMLファイルに含めるのを忘れてしまったと思います。

+0

* "あなたのFXMLファイルにJFXButtonインポートを含めるのを忘れてしまった" * FXMLLoaderは、この場合、どのように正しい完全修飾クラス名を出すのですか? – fabian

+0

良い点。私はちょうど私がこの場合チェックするものを考えていた。 – Nash

関連する問題