如何修复UnsatisfiedLinkError? [英] How to fix UnsatisfiedLinkError?
问题描述
我希望使用我的本地声音文件之一来提供背景音乐,但出现此错误消息:
I wish to use one of my local sound files to provide background music, but I get this error message:
原因:java.lang.UnsatisfiedLinkError:无法加载库:C:\ Program Files \ Amazon Corretto \ jdk1.8.0_232 \ jre \ bin \ glib-lite.dll
Caused by: java.lang.UnsatisfiedLinkError: Can't load library: C:\Program Files\Amazon Corretto\jdk1.8.0_232\jre\bin\glib-lite.dll
但是我的代码如下:
public class DungeonGUI extends Application {
private Dungeon dungeon;
private Stage stage;
private GridPane root;
private Button attack;
private Button heal;
// private Button checkInventory;
private Button save;
private Text characterHealth;
private Text characterPower;
private Text characterInventory;
private Text monsterHealth;
private Text monsterPower;
private File audioFile = new File("C:/Users/15774/Downloads/oof.mp3");
@Override
public void start(Stage stage) throws Exception {
setButtons();
dungeon = new Dungeon();
setTexts();
this.stage = stage;
root = new GridPane();
heal.setOnAction(this::onHeal);
attack.setOnAction(this::onAttack);
save.setOnAction(this::onSave);
stage.setTitle("Dungeone Dungeon");
root.setAlignment(Pos.CENTER);
setMedia();
setupRoot();
setStage(stage);
}
private void setMedia() {
Media media = new Media(audioFile.toURI().toString());
MediaPlayer mediaPlayer = new MediaPlayer(media);
mediaPlayer.setAutoPlay(true);
}
如您所见,我在任何时候都没有调用程序文件.可能是什么问题?
As you can see I did not call program files at any time. What might be the problem?
P.S .:这只是我的代码的一部分.如果您需要更多信息,请发表评论.
P.S.: this is only part of my code. If you guys need more information just shoot a comment.
推荐答案
Amazon's Corretto 8
不包含JavaFX support
的必要工件.
Amazon's Corretto 8
doesn't contain the necessary artifacts for JavaFX support
.
您必须集成一些必须在线检查的第三方jar.
You have to integrate some third party jar/jars that you have to check online.
您可以使用OpenJFX
,它是提供JavaFX支持的开源库. OpenJFX是OpenJDK的一个项目.
You can use OpenJFX
which is open source library that provides JavaFX support. OpenJFX is a project of OpenJDK.
它从JDK 11开始就支持,但是您可以在Corretto 8上尝试使用它.它可能会起作用.
It supports from JDK 11 onwards but you can try that with Corretto 8. It may work.
尝试使用Oracle's JDK version 8
/OpenJDK version 8
.
注意::Oracle's JDK 8
支持JavaFX
(它具有JavaFX支持所必需的库). Open JDK版本8可能包含OpenJFX(您可以检查).
Note : Oracle's JDK 8
supports JavaFX
(it has necessary libraries for JavaFX support). Open JDK version 8 may include OpenJFX (you can check).
阅读:
https://github.com/corretto/corretto-8/Issues/26
这篇关于如何修复UnsatisfiedLinkError?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!