我正在尝试将我的项目导出为可执行jar文件,但出于某种原因,框架中画布上的绘图框架变小了。换句话说,屏幕以某种方式变得更小(1536 x 864),当我从Eclipse运行它时,它是1080p。
我原以为编译器或.jar导出可能是问题,所以我尝试使用IntelliJ Idea但得到了相同的结果:编译器中的1080p,但是从.jar运行的1536 x 864
所以下面的代码会产生描述的结果:
GraphicsDevice device = GraphicsEnvironment
.getLocalGraphicsEnvironment().getDefaultScreenDevice();
// device.getDisplayMode() returns 1920 x 1080 and some other stats
// device.getDefaultConfiguration().getBounds() returns 1920 x 1080 when run from Eclipse (or IntelliJ) but returns 1536 x 864 when ran from the exported .jar file.
我希望.jar文件仍然是1080p而不是更改为更小的尺寸。我在想这个问题可能在于我的电脑本身,但我不知道如何检查这个问题。我无法在另一台计算机上复制此问题,但会检查更多。如果有要求,我很乐意提供任何照片;我现在不能。任何帮助将不胜感激!
注意:这是我在部分解决问题Why isn't Java Fullscreen Exclusive Mode running my max screen resolution?时可能有用的另一个问题的扩展。最初的问题是,即使在Eclipse中,我的屏幕尺寸也比预期的要小。部分解决方案是我将工作区环境从版本11恢复为Java版本1.8。
编辑澄清:问题围绕着GraphicsDevice,我对Canvas和Frame的引用只是一个例子。
编辑2:基于前一个问题的潜在解决方案是Java解释器可能存在问题。 Eclipse试图使用Java版本11来解释代码,因此我的计算机可能正在尝试使用版本11来解释Java。我不知道它是如何工作的,但也许我可以尝试在我的计算机上卸载所有Java 11版本的实例。
编辑3:编辑2工作。我卸载了版本11并连接了1.8版本,一切运行良好:)
如果这有助于任何人:编辑3的问题工作。