如何在非GUI服务器环境中运行libGDX应用程序?

时间:2015-06-11 19:20:17

标签: java linux ubuntu libgdx server

我构建了一个在我的PC桌面上运行良好的libGDX应用程序但是当我尝试在我的Ubuntu服务器上运行它时,它会引发以下错误:

  

" LwjglApplication:无法初始化音频,禁用音频   java.lang.UnsatisfiedLinkError:/tmp/libgdxroot/31ce78a2/liblwjgl64.so:/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/../lib/amd64/libjawt.so:signa awt_Unlock,版本SUNWprivate_1.1未在文件libmawt.so中定义,链接时间参考"。

我知道这是因为我的服务器在非GUI模式下运行。但是如何在这种环境中运行我的libGDX应用程序?我听说过" libGDX无头后端"。但我不知道如何使用它。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

对于那些正在寻找此问题的人,我已经回答了这个问题。 首先,在build.gradle文件中添加这两个库:

compile "com.badlogicgames.gdx:gdx-backend-headless:$gdxVersion"
compile "org.mockito:mockito-all:1.9.5"

然后,我已经开始了我的libGDX:

HeadlessNativesLoader.load();
MockGraphics mockGraphics = new MockGraphics();
Gdx.graphics = mockGraphics;
HeadlessNet headlessNet = new HeadlessNet();
Gdx.net = headlessNet;
HeadlessFiles headlessFiles = new HeadlessFiles();
Gdx.files = headlessFiles;
Gdx.gl = mock(GL20.class);
HeadlessApplicationConfiguration config = new HeadlessApplicationConfiguration();
ApplicationListener myGdxGame = EntryPoint.getHeadlessMyGdxGame(config);

和EntryPoint.getHeadlessMyGdxGame返回继承的HeadlessApplication