gpt4 book ai didi

java - 将 .wav 文件和 .ttf 字体文件添加到可执行 jar 文件中

转载 作者:行者123 更新时间:2023-12-01 18:14:32 33 4
gpt4 key购买 nike

我创建了一个可执行的 jar 文件,并将所有 .wav、.ttf、.png 和 .class 文件添加到该 jar 中。当我运行 jar 文件时,当 jar 文件包含在所需的所有其他文件所在的文件夹中时,它可以完美运行。

但是,我试图将正确执行应用程序所需的所有文件包含在 jar 文件中。我使用的命令是:

jar cvfe App.jar Main *.class *.png *.ttf *.wav

在 Windows 命令提示符下。当在包含上面列出的所有必需文件的文件夹之外执行 jar 文件时,jar 文件中似乎只包含图像文件和类文件,字体文件和声音文件不起作用,GUI 显示默认字体和声音也不起作用。命令提示符上的堆栈跟踪打印出当我执行上述命令时正在添加所需的所有文件,但它似乎不起作用。

*****编辑*****

这是我加载字体的方式。

 Font font = Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("C&LBOLD.ttf")).deriveFont(50f);

这是我加载 .wav 文件的方式:

File waveFile = new File("sounds//berlin.wav");

最佳答案

很可能您没有通过类加载器加载这些文件。

如果您提供加载这些文件的代码,我们就可以确定。

[编辑] 感谢您发布额外的代码 - 正如怀疑的那样。您需要使用类加载器来加载文件。

例如,您在哪里......

new FileInputStream("C&LBOLD.ttf")

你应该有这样的东西......

this.getClass().getClassLoader().getResourceAsStream("C&LBOLD.ttf")

然后,Java 将知道在类路径(以及 jar 中)查找资源。

关于java - 将 .wav 文件和 .ttf 字体文件添加到可执行 jar 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30481579/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com