Как установить максимальную JVM-память (XMX) для JAR-файла - PullRequest
5 голосов
/ 17 мая 2010

Как мне установить максимальную jvm-память без добавления дополнительного пакетного скрипта в мою Программу. Ответ приведен ниже.

1 Ответ

3 голосов
/ 17 мая 2010

Это хороший вопрос, но ваше воплощение предполагает многое. Я предполагаю, что вы должны задокументировать имя вашего jar, чтобы пользователи вызывали «java -jar xyz.jar», так что вы также можете включить в документацию, что «-Xmx256M» требуется?

Возможно, вам повезет больше с использованием Java Launcher, например этот для Windows, где вы положили конфигурацию Launcher (путь, максимальный объем памяти и т. Д.) В отдельный файл. Для кроссплатформенности есть LaunchAnywhere и другие, которые работают аналогично. См. Как я могу преобразовать мою программу Java в файл .exe?

Чтобы улучшить вашу существующую схему:

  • используйте системное свойство java.home для определения местоположения JDK / JRE
  • используйте java.class.path для установки пути к классу и аналогично для java.library.path, если вашему приложению требуется собственный код.
  • передать аргументы команды, переданные вашему основному методу, процессу spanwed

Но, тем не менее, кажется, что это большие усилия, которые в лучшем случае представляют собой дырявую абстракцию, когда вместо этого будет достаточно простой и понятной документации.

...