Кривая обучения Maven и накладные расходы для малых / средних проектов?

Какова будет (грубая оценка, средняя, ​​конечно) начальная кривая обучения и настройки и последующие издержки при использовании проекта Maven для C++/Eclipse/Linux от малого до среднего размера?

Мы 4 разработчика в начале пути. В настоящее время у нас есть ~20 собственных "проектов" Eclipse C++ (CDT), которые мы компилируем в интерактивном режиме. Мы хотели бы иметь автоматический скрипт проверки и сборки.

На данном этапе это кажется немного излишним, но, возможно, нам следует принять его раньше, чем позже, при условии, что это не повлечет за собой дополнительных затрат. У нас нет пропускной способности для расширенного управления конфигурацией прямо сейчас. Большое спасибо!

ИЗДАНО / ПОДРОБНО:

Я понимаю, что недостаточно хорошо описал свои потребности. Прочитав приведенные ниже ссылки, я вижу, что инструмент КИ кажется нам излишним в данный момент. Мне бы хотелось иметь инструмент сборки, который с одной стороны хорошо интегрируется с eclipse, а с другой - позволяет создавать автономные неинтерактивные сборки. Мне нравится простота работы с проектами Eclipse: вы просто добавляете файлы, добавляете ссылки на внутренние компоненты и библиотеки 3-й части по мере их добавления, и все. Вам не нужно вручную поддерживать make-файлы или тому подобное. Проблема с этим, как и с MSVS несколько лет назад, когда я работал с ней, заключается в том, что она не дает вам возможность неинтерактивных сборок. Итак, существует ли такой инструмент?

1 ответ

Решение

Во-первых, в то время как Maven имеет некоторую поддержку для создания проектов C++ с помощью maven-native-plugin или, если вы уже используете Make, с maven-make-plugin из набора c-builds, это не распространенный вариант использования, и здесь не широко используются. Таким образом, хотя это и возможно, но вы не получите поддержки и не сможете легко найти ресурсы (просто немного Google или просмотрите список пользователей maven, чтобы получить представление).

Во-вторых, если вы добавите к этому, что вам придется изучать Maven в то же время, то будет разумным сказать, что вы не выбираете самый простой путь.

Так что вместо этого я бы придерживался более традиционных инструментов и / или Ant. Что касается самой непрерывной интеграции, я видел несколько ссылок, в которых упоминается использование CruseControl для создания проекта C++. См. Какой инструмент непрерывной интеграции лучше всего подходит для проекта C++? или, например, используя CruiseControlWithCplusPlus. Но я полагаю, что эти принципы можно перенести в другой движок CI (например, Hudson, который я считаю гораздо более простым в использовании, чем CruiseControl).

Другие вопросы по тегам