当前位置: 首页 > 知识库问答 >
问题:

JavaFX中的警报–导出jar后图标不会显示

崔绍辉
2023-03-14

我一直在尝试使用Alerts研发App,但是导出jar后,应该显示在对话框中的图标不见了:

当我从Eclipse开始时,图标显示为:

我做错了什么?代码:

public class Main extends Application{
    @Override
    public void start(Stage primaryStage){
        Alert alert = new Alert(AlertType.CONFIRMATION);
        alert.show();
    } 

    public static void main(String[] args){
        launch(args);
    }
}

编辑:从命令行开始时,将打印以下错误:

通用域名格式。太阳javafx。css。样式管理器getCachedImage

警告:加载图像时出错:rsrc:对话框确认。巴布亚新几内亚

我不明白,为什么图像(可能)丢失了。

共有1个答案

宋晋
2023-03-14

我以前是通过文件导出的→ 出口→ JAVA→ 可运行JAR文件。正如jewelsea所写,出口的方式很重要。Oracles文档说,我应该使用Ant任务。在用Eclipse复制它之后,如本文所述,它工作了。

不过,我找不到一个好的解释,为什么这种方法是必要的。

 类似资料:
  • 我在下面的帖子中提到了这个问题和我的答案:来自Apache FOP 1.1和Java的PDF图像。我试图在每页上显示背景图像(有点像水印): 我让它在我的机器上从Eclipse和导出的jar中工作,如上面提到的帖子所述,但它不适用于我以外的机器。它总是说不支持该格式。 我正在使用 FOP 网站上的 FOP 1.1 罐子,并将它们全部添加到我的锁片中。也将它们与罐子一起导出。我没有解决方案的想法了。

  • 我在Eclipse中有一个Java项目。这是文件夹结构: 代码包位于src中,所有图像都位于res文件夹中。 代码中的图像参照如下: 但是,在我将项目导出到JAR文件后(通过使用导出- 所有图像都在根文件夹中,无法正确引用。如何正确地引用这些图像,使它们在Eclipse和导出的JAR中都可见?

  • 我完全误解了关于将项目导出到JAR的一些事情。 2事情正在发生。

  • 问题内容: 如何在不使用的情况下将程序图标设置为警报?为什么没有?这是因为在初始化整个窗口之前必须显示一些警报,因此没有可以启用的场景。 问题答案: 您可以从Alert实例窃取DialogPane,并将其添加到常规Stage。一个节点一次只能是一个场景的根,因此您需要首先替换警报场景的根:

  • 问题出在哪里?我怎么修好它? 下面是Controller类函数的代码:

  • 我使用的是JRE 1.9.0(9.0.4+11)。我正在尝试创建一个可执行的JAR。在我用Maven导出到JAR并尝试启动它之后,我得到以下错误: 线程“JavaFX Application thread”java.lang.noClassDeFounderRror:com/sun/javafx/css/converters/sizeConverter在org.kordamp.ikonli.jav