2016-09-06 4 views
0

javafx에서 새로운 기능입니다. 나는 javafx에서 기본적인 프로그램을 만들고있다. 그러나 프로그램을 실행하는 동안 "java.lang.reflect.Method.invoke (Method.java:497)에서"오류가 ........... 프로그램입니다 :javafx 프로그램을 실행하는 중에 "java.lang.reflect.Method.invoke (Method.java:497)"에서이 오류가 발생합니다.

package myjfxapp; 

import com.sun.javaws.Main; 
import java.io.IOException; 
import javafx.application.Application; 
import javafx.event.ActionEvent; 
import javafx.event.EventHandler; 
import javafx.scene.Parent; 
import javafx.scene.Scene; 
import javafx.fxml.FXMLLoader; 
import javafx.scene.control.Button; 
import javafx.scene.layout.Pane; 
import javafx.scene.layout.StackPane; 
import javafx.stage.Stage; 


public class NewFXMain extends Application { 

    @Override 
    public void start(Stage primaryStage) throws IOException { 

FXMLLoader loader = new FXMLLoader(Main.class.getResource("main.fxml")); 
     Pane root = loader.load(); 
     Scene scene = new Scene(root); 
     primaryStage.setTitle("Hello World!"); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 
    } 
    public static void main(String[] args) { 
     launch(args); 
    } 

} 

Fxml 코드 :

<?xml version="1.0" encoding="UTF-8"?> 

<?import javafx.scene.control.Button?> 
<?import javafx.scene.control.CheckBox?> 
<?import javafx.scene.layout.AnchorPane?> 


<AnchorPane id="AnchorPane" prefHeight="400.0" prefWidth="600.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.60"> 
    <children> 
     <Button layoutX="221.0" layoutY="58.0" mnemonicParsing="false" text="Button" /> 
     <CheckBox layoutX="211.0" layoutY="152.0" mnemonicParsing="false" text="CheckBox" /> 
    </children> 
</AnchorPane> 

스택 추적 : 당신의 도움이 의무가 될 것이다

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:497) 
    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) 
....

+1

[편집] 당신이 게시 코드 라인 전체 스택 추적을 포함하고 식별하는 질문 던지고하시기 바랍니다 예외를 필요로하므로, NewFXMain라고 . –

+0

그리고 @James_D에서 제안한 수정 코드로 코드를 업데이트하십시오. 잘못된 가져 오기가 있고 그 클래스를 사용하여 리소스를 얻으면 문제의 근원을 식별 할 수 없기 때문입니다. – DVarga

답변

0

당신은

new FXMLLoader(Main.class.getResource(...)); 

com.sun.javaws.Main 수입 어떤 이유로

을 사용했다. 귀하의 클래스는이

new FXMLLoader(NewFXMain.class.getResource(...)); 

하거나

new FXMLLoader(getClass().getResource(...)); 
+0

코드를 바꾸었지만 동일한 문제가 계속 발생한다고 유감스럽게 생각합니다. –

+0

@weilkroft * 같은 * 오류 또는 새 오류? 정확히 같은 오류가 발생한다고 생각하는 것은 매우 어렵습니다. –

+0

전 선생님 문제는 모르겠지만 그렇습니다. 같은 오류입니다. –

관련 문제