可执行 Jar 比使用 Eclipse Runner 小 Canvas

Executable Jar has a Smaller Canvas than using the Eclipse Runner

我正在尝试将我的项目导出为可执行 jar 文件,但由于某种原因,Frame 中 Canvas 上绘制的框架变小了。换句话说,从我 运行 从 1080p 的 Eclipse 开始,屏幕不知何故变小了 (1536 x 864)。

我认为编译器或 .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,而不是更改为更小的尺寸。我认为问题可能出在我的计算机本身,但我不知道如何检查它。我无法在另一台计算机上复制此问题,但会检查更多。如果需要,我很乐意提供任何图片;我现在不能。任何帮助将不胜感激!

注意:这是另一个问题的扩展,可能对我部分解决问题 有帮助。最初的问题是,即使在 Eclipse 中,我的屏幕尺寸也比预期的要小。部分解决方案是我将工作区环境从版本 11 恢复到 Java 版本 1.8。

为澄清而编辑:问题围绕着 GraphicsDevice,我对 Canvas 和 Frame 的引用只是正在发生的事情的一个例子。

编辑 2:基于上一个问题的潜在解决方案是 Java 解释器可能存在问题。 Eclipse 正在尝试使用 Java 版本 11 解释代码,所以也许我的计算机正在尝试使用版本 11 解释 Java。我不知道它是如何工作的,但也许我可以尝试卸载 Java我电脑上有11个版本。

编辑 3:编辑 2 有效。我卸载了 11 版并连接了 1.8 版和所有东西 运行 :)

如果这对任何人有帮助: 编辑 3 个问题有效。