Наш код написан на Java и Javascript (библиотеки AJAX). У нас есть обертки / многократно используемый код вокруг существующих библиотек для выполнения рутинных задач, таких как: соединения с БД, управление сеансами, ведение журнала, настройки гибернации, базовая структура, некоторый многоразовый код для многопользовательской работы и т. Д. С конца JavaScript у нас есть инициализаторы страниц, компоненты макета пользовательского интерфейса , пользовательские объекты js и немного нашей собственной логики.
У нас есть несколько проектов, в которых этот код можно использовать повторно, но в то же время этот код развивается вместе с приложением. Поэтому, если мы найдем общий способ сделать это, мы можем переместить его в код инфраструктуры и позволить другим проектам также извлечь из этого пользу. Если / когда мы обнаружим ошибку в базовом коде, мы можем исправить ее в одном месте и зафиксировать, и все другие проекты получат изменения (а не все, кто вносит изменения локально).
Если это просто java-файлы, мы можем сохранить его как отдельный проект и включить его в качестве зависимого модуля в eclipse / maven и включить его в виде jar-файла по мере необходимости. Эта часть проста в обращении, но теперь у нас также есть повторно используемый javascript в коде, который точно не может быть jar (ed). Нам нужны некоторые предложения о том, как должен быть написан код, чтобы мы могли повторно использовать его через maven (время развертывания) и через eclipse (время разработки), не проходя слишком много циклов.
Прежде чем написать это, я наткнулся на несколько статей о stackoverflow, в которых действительно говорится о многократно используемом коде и методологиях, которые хороши, но не совсем так, как управлять ими с помощью svn, maven, eclipse и т. Д.
Связав их, для справки.
В некоторых наших старых проектах мы поддерживали ant-файлы, которые копировали файлы из базовых локаций в финальную войну, поэтому все было доступно. Но с течением времени по мере роста проекта, даже для простой проверки, нам пришлось перестраивать всю войну и развертывать для тестирования на компьютере разработчика. Который отнимал 5 минут каждый раз.
Итак, вопрос в том, существуют ли какие-либо шаблоны репозитория, идеи компоновки проекта затмения, стили упаковки, которые могут помочь нам решить эту проблему?