Исполняемый Jar имеет меньший холст, чем при использовании Eclipse Runner - PullRequest
0 голосов
/ 22 апреля 2019

Я пытаюсь экспортировать свой проект в виде исполняемого файла JAR, но по какой-то причине рамка рисования на холсте в рамке стала меньше. Другими словами, экран как-то стал меньше (1536 x 864) с того момента, когда я запускал его из Eclipse, где он был 1080p.

Я подумал, что, возможно, проблема в экспорте компилятора или .jar, поэтому я попытался использовать IntelliJ Idea, но получил те же результаты: 1080p в компиляторе, но 1536 x 864, запущенный из .jar

Таким образом, приведенный ниже код даст описанные результаты:

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, а не уменьшался в размере. Я думаю, что проблема может быть в моем компьютере, но я понятия не имею, как это проверить или нет. Я не мог повторить эту проблему на одном другом компьютере, но буду проверять больше. Я был бы рад предоставить любые фотографии, если потребуется; Я не могу в данный момент. Любая помощь будет принята с благодарностью!

Примечание. Это расширение другого вопроса, которое может оказаться полезным, когда я частично решил проблему Почему в полноэкранном эксклюзивном режиме Java не используется максимальное разрешение экрана? . Первоначальная проблема заключалась в том, что даже в Eclipse у меня был меньший размер экрана, чем предполагалось. Частичное решение состояло в том, что я вернул свою рабочую среду на Java версии 1.8 с версии 11.

Редактировать для уточнения: проблема связана с GraphicsDevice, и моя ссылка на Canvas и Frame является лишь примером того, что происходит.

Редактировать 2: потенциальное решение, основанное на предыдущем вопросе, заключается в том, что может быть просто проблема с интерпретатором Java. Eclipse пытался интерпретировать код с использованием Java версии 11, поэтому, возможно, мой компьютер пытается интерпретировать Java с использованием версии 11. Я не знаю, как это работает, но, возможно, я могу попробовать удалить все экземпляры версий Java 11 на моем компьютере.

Правка 3: Правка 2 сработала. Я удалил версию 11 и подключил версию 1.8, и все заработало:)

1 Ответ

0 голосов
/ 28 апреля 2019

На случай, если это кому-нибудь поможет: Редактировать 3 вопроса сработало.

...