2012-04-21 4 views
0

Я работаю над Java-приложением, и мы создаем 32-разрядную и 64-разрядную версию. Программное обеспечение использует собственный код, поэтому 32 и 64-разрядные версии должны упаковывать соответствующие библиотеки.Несколько сборок одного и того же приложения на сервере сборки

В настоящее время на нашем сервере сборки (jenkins) мы создаем 32 и 64 бит в одном проекте. Причина этого в том, что мы хотим, чтобы две сборки были синхронизированы - в основном, если это не удается, мы не хотим развертывать некоторые функции в 32-разрядной версии, но не в 64-разрядной версии. Поскольку базовая базовая база кода одинакова, и только библиотеки разные, я думаю, что номера сборки всегда должны быть одинаковыми.

Это решение работает, но его требуется в два раза больше, потому что он выполняет двухпроходную сборку. Если я разложил их на отдельные проекты, то нет гарантии, что 32-разрядные и 64-разрядные версии будут синхронизироваться с точки зрения чисел сборки и состояния сборки.

Похоже на то, что я действительно нахожусь, это родительская сборка, в которой есть двое детей - 32 и 64-битная сборка. Я не уверен, что это должно быть обработано на сервере сборки, или, может быть, в качестве проекта с несколькими модулями в maven. Наличие мультимодульного проекта кажется не совсем правильным, хотя, поскольку только библиотеки разные, а не какой-либо код.

Кто-нибудь работал с этой ситуацией и может дать руководство здесь?

ответ

2

Я думаю, что задание с несколькими конфигурациями будет идеально подходящим для вашей ситуации. Однако я не буду помогать с временем сборки. Единственное, что помогает, это создавать 32 и 64-разрядные версии одновременно. Если ваш сервер сборки недостаточно велик, чтобы справиться с этим, вы можете получить другой сервер и добавить его в качестве подчиненного Jenkins. Затем назначьте 32-битную конфигурацию для построения на одной и 64-битной конфигурации для сборки на другой.

+0

Спасибо, я думаю, что это то, что я искал. –

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