Javafx packegs不存在IntellJ

Lui*_*oes 4 java javafx javac maven fxml

您好,我是JavaFx的新手.我想问一个问题.我正在尝试编写我的第一个Javafx应用程序.但我仍然遇到一个错误,即使我的应用程序的语法很好.没关系,因为我在初始化ItelliJ中的第一个JavaFx应用程序时使用了默认值.这是我的代码

package sample;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class Main extends Application {

@Override
public void start(Stage primaryStage) throws Exception{
    Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
    primaryStage.setTitle("Hello World");
    primaryStage.setScene(new Scene(root, 300, 275));
    primaryStage.show();
}


public static void main(String[] args) {
    launch(args);
}
}
Run Code Online (Sandbox Code Playgroud)

我正在使用java 8来运行它.但是当应用程序运行时会出现这种情况.

/home/jordan/IdeaProjects/new/src/sample/Main.java
Error:(3, 26) java: package javafx.application does not exist
Error:(3, 26) java: package javafx.application does not exist
Error:(7, 20) java: package javafx.stage does not exist
Error:(5, 20) java: package javafx.scene does not exist
Run Code Online (Sandbox Code Playgroud)

等等......这也出现了

Information:javac 1.8.0_121 was used to compile java sources
Run Code Online (Sandbox Code Playgroud)

小智 7

我有同样的问题,我这样解决了:

转到文件 - >项目结构,然后确保"Project SDK"是"Java9"; 另外,"Project Language Level"应该是java9.(更确切地说,它被称为"9个模块,接口中的私有方法等".)

"项目语言级别"降低了Java版本.所以你认为你正在使用9但是在项目中你不是.这就是您必须更改这些设置的原因.