Сборки работают на сборочной машине через TFS / Team Build, но не TeamCity - PullRequest
2 голосов
/ 17 февраля 2012

Я новичок в TeamCity, поэтому будьте осторожны

Я настроил teamcity на сервере сборки.Сборки .net работают при запуске через Visual Studio Team Builds, но не при запуске через Teamcity (нажатием на кнопку запуска в администрировании, а также при регистрации).

Сборки не выполняются при загрузках похожих ссылочных ошибок, таких как .. User Controls \ ucCalendar.cs

(19, 11): error CS0246: The type or namespace name 'AxMSACAL' could not be found (are you missing a using directive or an assembly reference?)
followed by our own objects which have not been created due to other errors.
DAL\OrderItemCollection.cs

(31, 16): error CS0246: The type or namespace name 'OrderItem' could not be found (are you missing a using directive or an assembly reference?)

Я понимаю, что означают эти ошибки, но я, очевидно, упускаю что-то фундаментальное, так как не понимаю, почемуработает при сборке на компьютере сборки через TFS / Team Build, но не работает в teamcity, когда ..

  • оба используют один и тот же физический компьютер сборки
  • оба используют один и тот же источник: fromTFS
  • оба используют MSBuild для построения решения.
  • источник включает в себя каталог внешних ссылок для DLL и т. Д.

Что TeamCity делает по-другому для TFS / TB, то естьвызывая эти ошибки?

Любые указатели были бы очень полезны.Ура

Ответы [ 2 ]

3 голосов
/ 20 февраля 2012

Вещи, которые вы можете попробовать:

  1. Убедитесь, что ваши настройки TFS VCS верны, вам нужно присоединить корень TFS VCS и затем добавить правила проверки с этим синтаксисом:

    +:path/to/ProjectFolder=>.
    +:path/to/libary=>library/path
    

    Это будет проверять содержимое вашей папки Project в agent.work.dir / buildNumber и вашу библиотеку agent.work.dir / buildNumber / library / path.

  2. Откройте Visual Studio и проверьте ссылки на ваши библиотеки, затем перейдите к buildmachine и откройте / buildNumber (вы найдете путь в TeamCity-> Agents -> (TeamCityAgent) -> Параметры агента. Найдите ваши библиотеки и посмотрите, гдеTeamCity проверил их на.

  3. Может также помочь открыть проверенное решение на buildmachine (agent.work.dir) / buildNumber, при условии, что VS установлен. Вы должны увидетьгде ваши ссылки выключены

0 голосов
/ 17 февраля 2012

Обычно TeamCity не может найти что-то, что существует на сервере сборки / в системе разработчиков, но не существует, когда TeamCity воссоздает среду сборки "чисто". Это именно то, что заставило нас использовать его, чтобы поймать эти типы "он строится на моей системе!" ошибки.

Проект AxMSACAL построен в правильном порядке TeamCity? Если это сторонний компонент, его отключает TeamCity?

...