亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法訪問類 com.sun.javafx.util.Utils

無法訪問類 com.sun.javafx.util.Utils

動漫人物 2022-12-15 16:57:56
我已按照本指南將 JavaFX 安裝到 Linux 機器上。首先我安裝了 Java 11asus@asus-pc:/usr/share/openjfx/lib$ java -versionopenjdk version "11.0.3" 2019-04-16OpenJDK Runtime Environment (build 11.0.3+7-Ubuntu-1ubuntu219.04.1)OpenJDK 64-Bit Server VM (build 11.0.3+7-Ubuntu-1ubuntu219.04.1, mixedmode, sharing)asus@asus-pc:/usr/share/openjfx/lib$ 然后我從命令安裝了 OpenJFXsudo apt-get install openjfx asus@asus-pc:/usr/share/openjfx/lib$ ls javafx.base.jar      javafx.graphics.jar  javafx.swing.jar javafx.controls.jar  javafx.media.jar     javafx.web.jar javafx.fxml.jar      javafx.properties    src.zip asus@asus-pc:/usr/share/openjfx/lib$ 然后在 Eclipse 中創建了一個庫。然后我將它包含到我的 java 項目中。我嘗試運行這段代碼:package se.danielmartensson.start;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{    /*     * Start the start(Stage front)     */    public static void main(String[] args) {        launch();    }    @Override    public void start(Stage front) throws Exception {        Parent root = FXMLLoader.load(getClass().getResource("/JUSBPlotter/src/se/danielmartensson/fxml/front.fxml"));        Scene scene = new Scene(root);        front.setScene(scene);        front.setTitle("Fracken");        front.show();    }}
查看完整描述

5 回答

?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

使用 JDK 14 的 IntelliJ IDEA 2020.1 也有同樣的問題。


如果您使用 maven ,最后通過在module-info.java下面添加一個這樣的解決方案:src/main/java


module sample {

    requires javafx.controls;

    requires javafx.graphics;


    opens sample;

}



查看完整回答
反對 回復 2022-12-15
?
函數式編程

TA貢獻1807條經驗 獲得超9個贊

轉到 Run>Run Configurations 然后 Arguments 選項卡并轉到 VM Arguments 并粘貼以下代碼以添加模塊“--module-path /path/to/lib --add-modules javafx.controls,javafx.fxml”記得修改/path/to/lib 到你的路徑你的圖書館然后點擊應用你就設置好了



查看完整回答
反對 回復 2022-12-15
?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

我按照你說的做了,但在那之后我遇到了一些其他的例外,所以我想出了下面的代碼:


module {pkg}{

   requires javafx.controls;

   requires javafx.graphics;

   requires javafx.fxml;


   exports {pkg of Application class};


   opens {pkg};

}

之后你需要重建你的項目可能是因為 Kotlin 的一些異常。然后我看到異?!拔恢梦丛O置”。要解決此問題,您必須以“/”開頭的 fxml 位置,例如:


App.class.getResource("/form.fxml");

編輯


我在JavaFxHelloWorld使用 Gradle 創建了一個 HelloWorld 項目。


查看完整回答
反對 回復 2022-12-15
?
慕俠2389804

TA貢獻1719條經驗 獲得超6個贊

謝謝,對我來說如下


public void start(Stage primaryStage) throws Exception{

        Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));

module-info.java:


module sample {

    requires javafx.controls;

    requires javafx.graphics;

    requires javafx.fxml;

    opens sample ;

}


查看完整回答
反對 回復 2022-12-15
?
慕田峪9158850

TA貢獻1794條經驗 獲得超7個贊

正如marco-rosati#638 issue 中提出的那樣,如果您使用的是 Maven,則只需添加此插件即可:

<plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-surefire-plugin</artifactId>

    <version>3.0.0-M5</version>

    <configuration>

        <argLine> --add-exports javafx.graphics/com.sun.javafx.application=ALL-UNNAMED </argLine>

    </configuration>

</plugin>


查看完整回答
反對 回復 2022-12-15
  • 5 回答
  • 0 關注
  • 175 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號