У меня есть приложение, которое я разработал. В настоящее время он развертывается со всеми его конфигурационными файлами (в том числе log4j.properties
, как используется некоторыми внешними библиотеками, которые я использую) в том же каталоге, что и в моем приложении.Проблема с упаковкой Java
Итак, у меня есть bin
Дира, содержащий мой app.jar
, плюс несколько файлов свойств, плюс lib
реж со всеми своими внешними баночки. Внешние банки указаны в пути к классам, указанном в файле манифеста app.jar
.
Теперь имущие постановили, что новая структура будет bin
режа только с app.jar
, с lib
режем на тот же уровень (т.е. ../lib
, по отношению к bin
) для внешней баночки и каталог ../etc
для конфигурации файлы.
Прост достаточно, подумал я, - я изменил все пути пути от ./lib/<jarname>
до ../lib/<jarname>
и добавил ../etc
к пути к классам.
Проблема заключается в том, что теперь любые банки, которые используют log4j не работают - они не видят log4j.properties
файл - потому что, как я подозреваю, путь к классам для app.jar
не влияет на пути к классам для внешних банок (возможно ?), и раньше они находили это просто потому, что находились в '.'.
Любые мысли?