2010-08-18 2 views
0

Я использую MSbuild для инструмента CI и имею много проектов C#, расположенных в разных каталогах. Там также много иждивенцев. Некоторые разработчики используют параметр Add Project для добавления проекта, а некоторые напрямую подключаются к DLL-файлу, и я не контролирую его. в некоторых случаях все проекты добавляются в решение. Поэтому, если я компилирую это решение, тогда он заботится обо всех зависимостях. Но я не делаю этого в своей автоматической сборке. Я хочу скомпилировать все .csproj и выводить .dll в определенную папку, а затем все проекты, включая web, должны указывать на эту папку для справки.MSBuild и .CsProjects

Хотите знать, является ли это идеальным процессом?

ответ

0

В моем проекте мы делаем то же самое, и оно работает. Иногда у нас есть ссылки на проекты, и иногда у нас есть прямые ссылки dll в папке «DLL решения».

Как мы это делаем: Причина в том, что у нас много проектов (120 или более), и мы разделили их на несколько решений. Одно из решений - для фреймворков и commmon dll. Эти Dll копируются в сценарии postbuild в папку «Solutions Dlls» и регистрируются в TFS. Позже наши скрипты сборки скопировали эти решения dlls ...

Как это работает: Это работает «отлично» и приемлемо. Но многие проблемы приходят (и иногда все еще приходят), когда скрипты postbuild не работают нормально. Мы стремимся сократить количество csprojs до 50-60 и снова использовать одно решение.