У меня есть файл JAR, содержащий приложение, а также файлы конфигурации для этого приложения. Приложение загружает файлы конфигурации из пути к классам (с использованием ClassLoader.getResource()
) и полностью удовлетворяет свои зависимости с помощью файлов конфигурации, запеченных в файл JAR.
Иногда я хочу, чтобы приложение запускалось с немного другой конфигурацией (в частности, я хочу переопределить URL-адрес JDBC, чтобы указать на другую базу данных), поэтому я создаю новый файл конфигурации, сохраняю его в правильной структуре каталогов (что означает в каталог /config
записи пути к классам), и я хочу сделать что-то вроде этого:
java -cp new-config:. -jar application.jar
Но я не могу заставить путь к классам иметь запись new-config
пути перед содержимым JAR приложения. Жестко ли запрограммировано, что содержимое JAR всегда является первым в пути к классам?