Я унаследовал некоторый код от предыдущего разработчика, который создается с использованием Ant в исполняемый файл jar, который выполняется двойным щелчком. Приложение запускается, но при некоторых условиях происходит сбой OutOfMemoryError. Чтобы исследовать это, я хотел бы добавить -XX: + HeapDumpOnOutOfMemory jvm arg в файл сборки Ant, и, насколько я понимаю, элемент <jvmarg value="-XX:+HeapDumpOnOutOfMemory" />
должен пройти под задачей <java ...>
. Тем не менее, нет никакой задачи <java ...>
, которая может быть найдена в этом или любых других файлах сборки Ant в этой базе кода.Runnable jar file without ant java task - как это возможно?
Как это возможно? Как файл jar может быть выполнен без задания <java ...>
?
Я прошу в первую очередь выяснить, что на самом деле делает исполняемый файл jar-файла, чтобы я мог выяснить, куда положить этот элемент <jvmarg />
для отладки OOME.
Спасибо!
Пожалуйста, напишите содержимое build.xml. Вы получите быстрые ответы. – Jayan
Ответ JB Nizet говорит правду. Кроме того, вы можете написать стартовый скрипт, чтобы запустить приложение. Стартовый скрипт обычно является файлом .bat, .cmd (Windows) или .sh (* nix), в котором вы можете выполнить проверку параметров среды, определить аргументы jvm, а также предустановить начальные аргументы вашего приложения и т. Д. Например, вы можете проверить Catalina.bat или catalina.sh Tomcat и посмотреть, что он делает. – coolcfan