forum.bitel.ru http://forum.bitel.ru/ |
|
Maven репозиторий для либ биллинга (CRM) http://forum.bitel.ru/viewtopic.php?f=19&t=12710 |
Страница 1 из 1 |
Автор: | vkulakov [ 09 ноя 2017, 12:15 ] |
Заголовок сообщения: | Maven репозиторий для либ биллинга |
Столкнулся опять с неудобством настройки окружения для разработки дополнений для биллинга. Связаны они с тем, что нужно собрать все либы биллинга для определённой версии и сборки и нужно прописать все эти либы в проекте. Проблем бы не было, если бы к проекту можно было бы подключить несколько необходимых Maven-зависимостей нужных версий, а всё остальное подгрузилось бы автоматом. Отсюда вопрос: существует ли репозиторий Maven, в котором бы присутствовали либы биллинга разных версий и сборок и который я бы мог использовать в своих проектах? |
Автор: | skn [ 09 ноя 2017, 15:16 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
нету, мы используем несколько проектов для разных версий внутри проекта стороние либы не меняются (практически) а наш код мы мы не используем в формате либ, они формируются только на этапе сборке билдов |
Автор: | vkulakov [ 09 ноя 2017, 19:23 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
А не думали ли вы сделать репозиторий для клиентов? Ведь в процессе сборки можно параллельно выкладывать артифакты в местный репозиторий, а мы бы уже тянули данные при необходимости оттуда. |
Автор: | skn [ 09 ноя 2017, 20:49 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
не думали... это надо делать отдельную систему и ее поддерживать учитывая, что мы ее сами использовать не будем, ее актуальность скорее всего будет под вопросом я не очень понимаю, в чем именно у вас проблема.... |
Автор: | vkulakov [ 14 ноя 2017, 13:11 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
Неудобство в том, что нужно собрать все либы определённой версии и как-то подключить их к проекту. Потом после обновления сборки, нужно проделать всё это заново. Если есть несколько биллингов (как у нас), то нужно следить за тем, чтобы версия сборки на них была одинаковой, иначе можно случайно нарваться на неподдерживаемый метод. Плюс при планировании перехода на новую версию биллинга начинаешь обновлять свои скрипты, плагины, модули и пр., начинаешь тестировать всё это, а потом нужно срочно что-нибудь исправить в текущей версии - и опять нужно переключать версии библиотек. Всё усугубляется, когда нужно настроить проект у другого разработчика. Я просто думал, что у вас в проекте используется Maven и все зависимости там уже и так прописаны. В этом случае достаточно просто открыть в публичный доступ ваш репозиторий или хотя бы оставить в jar-файлах существующие pom-файлы. Если у вас не используется Maven (Gradle и пр.), то как вы управляете зависимостями? |
Автор: | skn [ 14 ноя 2017, 15:51 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
а каких зависимостях речь? я же сказал у нас отдельный проект для каждой версии (... 6.2, 7.0, 7.1, master), и в каждом проекте свой набор библиотек. любые изменения делаются только с последней версией кода и библиотек для каждой версии. т.е. посмотреть какие библиотеки использовались для версии на какой то момент времени в прошлом можно в истории гита, но именно только посмотреть, так как код для старых билдов не правим. |
Автор: | vkulakov [ 14 ноя 2017, 16:10 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
Зависимости - это сторонние библиотеки, которые используются в вашем коде. В Maven'е нужная библиотека подключается примерно следующим кодом: Код: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> Т. е. обновить библиотеку очень легко - достаточно просто поменять версию в одном месте. Когда вы в конкретном проекте (например, 6.2) собираете какой-то модуль (например, MPS), то в результате появляется jar-файл этого модуля, который уже используется в сервере. Если для сборки проекта используется тот же Maven, то внутри этого jar-файла будет находится pom-файл со всеми необходимыми для его работы/сборки зависимостями. Вместо Maven может использоваться что-то другое, например, Gradle. Я и спрашиваю, как вы управляете внешними (и внутренними) зависимостями (т. е. как вы подключаете "свой набор библиотек") для каждого проекта. Можно, конечно, в Eclipse вручную указать все библиотеки со всеми файлами и собирать Ant'ом, но это же ад кромешный. |
Автор: | skn [ 15 ноя 2017, 15:39 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
внешние либы у нас в проекте лежат в одной папке добавление новой либы или ее обновление это просто добавление/замена файла в папке при сборке ВСЕ внешние либы идут в составе сервера и клиента (вне зависимости от используемых модулей) |
Автор: | stark [ 15 ноя 2017, 15:45 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга |
Пока библиотеки мы таскаем все сами и храним их в git. Так исторически сложилось. Сборка на gradle, но библиотеки она не качает с mvn-репозиториев. Вообще в планах есть разобраться с библиотеками, работа надо этим уже идет . Возможно в следующей версии мы будем перейдем на maven-ский репозиторий, хотя бы для себя чтобы зависимости было легче отслеживать. Там и обсудим. |
Автор: | vkulakov [ 16 ноя 2017, 16:20 ] |
Заголовок сообщения: | Re: Maven репозиторий для либ биллинга (CRM) |
Теперь всё понятно - буду ждать перевода ваших проектов на Maven. Если кому интересно, то у себя создал внутренний репозиторий и в него скриптом по одному залил все jar'ники с указанием версии (и номера сборки). Потом все их прописал в pom-файле своего проекта - зависимостей получилось много, но для обновления версии либ теперь достаточно просто изменить номер биллинга в одном месте. Плюс новым разработчикам проще будет настраивать проект с нуля. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |