Я работал инженером-программистом в Amazon много лет, но недавно решил перейти в другую компанию. В Amazon есть специальная система сборки, которая называется brazil.
То, как она работала, заключалось в том, что я определяю рабочее пространство, а затем определяю, какие пакеты я буду использовать для своей разработки. Пример: пакет A зависит от B, C и D. Когда я создал свое рабочее пространство, я бы указал, что мне нужно иметь A и B. Локально.
Будет создан следующий конструктор папок:
myServiceAWorkspace
- .workspaceConfig
- A/
- A/src
- A/tst
- A/.packageConfig
- B/
- B/src
- B/tst
- B/.packageConfig
.packageConfig
содержал информацию о зависимостях и о том, как построить проект, очень похоже на build.gradle
Если я, где перейти к папке A и запустить нашу команду сборки,будет ли он собирать пакет A с B из локальной рабочей области, но будет использовать C и D из нашего репозитория. (Любые зависимости от B также будут использоваться из нашего репозитория, если только они не извлечены в локальной рабочей области)
Я нашел это очень мощным, поскольку сделало совместное использование пакетов между различными службами, среди прочего, очень простым.
Если вы искали систему сборки, которая работает так, но без везения. Есть ли какая-нибудь система сборки, которая может сделать это, или я могу заставить Gradle или Maven работать так?