Как прочитать аргументы ВМ из файла свойств в Eclipse?

2

Как известно, eclipse предлагает нам способ передачи параметров VM в конкретный класс, посмотрите раздел VM Arguments на изображении ниже:

Изображение 174551

Но я хочу передать эти аргументы по-другому, поэтому я могу поместить эти аргументы в файл свойств, а затем я извлечу их в код.

Итак, как только я вызываю класс Lesson2 (как на изображении выше) из любого другого класса, я передаю ему аргументы VM перед запуском

Любые предложения?

  • 0
    на вашем рабочем месте будет папка .metadata , в которой хранятся все ваши конфигурации. Я думаю -> вы можете обновить этот файл с помощью кода. Отказ от ответственности Никогда не проверял! , Как только я потерял свои значения отладки, и я прочитал эти файлы, чтобы получить некоторые параметры отладки из этих файлов конфигурации
  • 1
    Привет джед Не могли бы вы подробно рассказать о том, что вы подразумеваете под «получить их в коде»? Поскольку для настройки jvm используются аргументы vm, чтение параметров необходимо выполнить до инициализации vm. Итак, вам нужен альтернативный лаунчер, который читает файл свойств и передает аргументы. В Unix вы можете сделать это с помощью сценария оболочки.
Показать ещё 5 комментариев
Теги:

2 ответа

2
Лучший ответ

Чтобы установить аргумент VM в одном классе и получить доступ к нему в другом классе, либо вы установите параметр как -Dprop=propValue в поле аргументы VM в конфигурации запуска, либо с помощью System.getProperties().setProperty('prop', 'propValue') в код. Затем свойство можно получить из карты в вызываемом классе. Это также возможно для приложений, запущенных из командной строки, как

$ java -Dprop=propValue SomeClass ...

или параметр запуска сервера приложений (пример: Tomcat или JBoss)

$ export JAVA_OPTS="-Dprop=propValue"

а затем запуск сервера приложений.

Наконец, несколько свойств могут быть заданы путем перечисления -Dprop=value, разделенных пробелами.

0

Вы можете попробовать использовать JMX-клиент (например, VisualVM), а затем вызвать getVMOption (имя строки), см. HotSpotDiagnosticMXBean.getDiagnosticOptions()

Ещё вопросы

Сообщество Overcoder
Наверх
Меню