2016-09-03 2 views
1

У меня есть код Java, как это:Отсутствует JavaFX класс приложения

package mypackage; 

import javafx.application.Application; 
import javafx.stage.Stage; 

public class MyApp extends Application{ 
    public static void main(String args[]){ 
     launch(args); 
    } 
    public void start(Stage primaryStage){ 
     primaryStage.show(); 
    } 
} 

и я скомпилировал его в ~/myjava/src/mypackage/MyApp.class. тогда, когда я бегу от

~$ java -cp myjava/src mypackage/MyApp 

почему получаю ошибки как:

Missing JavaFX application class mypackage/MyApp 

Я использую JDK 8.

Можете ли вы мне помочь?

+0

использование 'cp' как' Myjava/src' кажется подозрительным. Это каталог с файлами '.class'? (Я бы ожидал 'myjava/build' или что-то в этом роде) –

ответ

2

Это потому, что вы вызываете свое приложение с помощью пути к каталогу вместо полного имени класса. Полноценное имя класса состоит из имени пакета и имени класса. В вашем случае это mypackage.MyApp.

Предполагая, что ваш скомпилированный класс находится в той же папке, что и файл источника .java, назовем его так:

java -cp myjava/src mypackage.MyApp 
+0

спасибо @hotzst, он отлично работает. Я думаю, '/' и '.' это то же самое, но это было другое :) – mnrendra

Смежные вопросы