2012-03-17 3 views
0

У меня есть приложение Spring MVC, в котором есть общедоступная внешняя WAR, админная консоль администратора и JAR общих служб. Мои два front-end проекта полагаются на различные Spring JAR, как и мои общие JAR сервисы. Список Spring JAR, который им нужен, подобен, но отличается. Кроме того, два приложения, основанные на WAR, полагаются на JAR общих служб.Пакет JARs в WAR или положить на путь класса?

Как бы вы развернули этот набор приложений/JAR с точки зрения объединения JAR или установки классов классов? Включите ли вы все подходящие Spring JAR и JAR службы в оба файла WAR? Не могли бы вы поместить все и все общие JAR-файлы в classpath? Если да, разместите ли вы их в classpath для Tomcat (сервера приложений, который я использую), используя параметр командной строки или вы просто добавите путь к classpathpath? Подойдете ли вы к разным сценариям разработки и производства?

Для справки Я использую Maven, который уже упаковывает все в файлы WAR, хотя я не уверен, что это лучший способ сделать это.

UPDATE: Для справки, я нашел эту страницу очень полезное чтение: http://www.mulesoft.com/tomcat-classpath

Спасибо,

Джеймс.

ответ

4

Храните ваши военные файлы самостоятельно, а не помещайте вещи в системный путь. Тогда вам не придется беспокоиться о проблемах загрузки классов между вашей системой и загрузчиками классов webapp и сэкономить массу разочарований в долгосрочной перспективе. Дисковое пространство дешево, как и память.

+0

Что касается сервисного уровня JAR? Это тоже будет полагаться на Spring JAR, хотя я предполагаю, что вы не можете включать эти JAR в JAR сервисного уровня. Не могли бы вы добавить соответствующие Spring JAR в classpath или есть лучший способ справиться с этим? – James

+1

Единственное, что я бы поставил в tomcat lib, это драйверы базы данных. Я оставил бы все остальное в каталоге WEB-INF/lib в военном файле. Таким образом, в случае развертывания 2 webapps каждая из них будет иметь свою собственную копию весенних банок. Это несколько связано с моим ответом на http://stackoverflow.com/questions/722448/how-to-avoid-copying-40m-of-java-libs-within-a-war-when-the-wars-size- это-41m/722537 # 722537 – digitaljoel

Смежные вопросы