【问题标题】:LWJGL won't work outside NetBeansLWJGL 不能在 NetBeans 之外工作
【发布时间】:2016-02-03 19:17:46
【问题描述】:

我无法弄清楚为什么我的 LWJGL3 应用程序不能在 NetBeans 之外运行。我将所有本地人复制到同一个目录。作为 Jar,如果我直接从 Jar 运行,则会出现错误:

[LWJGL] GLFW_API_UNAVAILABLE error
    Description : WGL: The driver does not appear to support OpenGL
    Stacktrace  :
            org.lwjgl.glfw.GLFW.nglfwCreateWindow(GLFW.java:1146)
            org.lwjgl.glfw.GLFW.glfwCreateWindow(GLFW.java:1227)
            com.alpha.core.Window.Init(Window.java:101)
            com.alpha.core.Game.GameLoop(Game.java:33)
            com.alpha.core.Game.Start(Game.java:23)
            com.alpha.tests.Main.main(Main.java:11)
Exception in thread "main" java.lang.RuntimeException: Failed to create the GLFW window
    at com.alpha.core.Window.Init(Window.java:103)
    at com.alpha.core.Game.GameLoop(Game.java:33)
    at com.alpha.core.Game.Start(Game.java:23)
    at com.alpha.tests.Main.main(Main.java:11)

图形驱动程序已更新,如果我从 IDE 运行,应用程序可以正常工作,所有 DLL 都在那里,我不知道是什么原因造成的。

任何帮助将不胜感激,在此先感谢!

【问题讨论】:

  • 在 IDE 之外运行时可能使用不同的 Java 版本/安装?
  • 我将 JDK 和 JRE 都更新到了最新版本。现在它在 IDE 上不起作用...
  • Java 版本有时会导致问题。例如,我的游戏曾经在 java 7 上运行良好,但在 java 8 上就坏了。这看起来更像是一个 OpenGL 问题,所以我建议你添加 opengl 标签。
  • 是的,如果我使用 Java 8 Update 25 运行它就可以了。
  • 它是 maven 项目吗?如果是这种情况,您可能需要在 pom.xml 中制作程序集插件来创建包含所有依赖项的 jar。从 Netbeans 运行时,依赖项会自动绑定。

标签: java opengl netbeans lwjgl


【解决方案1】:

有两种可能。第一个是你的显卡已经过时了。在这种情况下,您应该使用您的显卡制造商(例如 Nvidia、AMD 等)的软件更新您的驱动程序。只有在另一台机器上运行它时才会发生这种情况。第二种可能性是您的 IDE-jre 和您的外部 jre 具有不同的版本。在这种情况下,您必须在外部安装与 NetBeans 中相同版本的 jre。不要更新。如果 NetBeans 使用旧版本,请使用旧版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-01
    • 2021-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多