Team Foundation Server 2010: сборка с использованием внешней библиотеки - PullRequest
0 голосов
/ 14 июля 2010

У меня есть проблемы при создании проекта с использованием внешних библиотек с TFS для Visual Studio 2010.

В корне решения у меня есть папка "libs" со всеми общими библиотеками, и я ссылаюсь набиблиотеки оттуда.

При сборке проекта некоторые библиотеки не учитываются, и я получаю следующее сообщение об ошибке:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets (1360): Could not resolve this reference. Could not locate the assembly "Spring.Data". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.

Я пытался изменить конфигурацию решения с Debug на Release, чтобы найти общую библиотеку в другой папке ... Мне не удалось пройти через нее.

Любая идея о том, как я могу получить эту библиотекуиспользуется в сборке?

Спасибо, Дэвид

Ответы [ 3 ]

2 голосов
/ 14 июля 2010

Первый шаг - убедиться, что вы правильно ссылаетесь на dll, используя правильные относительные пути. Откройте XML-файл проекта и убедитесь, что пути являются относительными, а не абсолютными («....» и «C: \ Code \»).

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

Это самые распространенные проблемы, которые я видел. Если они верны, вам понадобится дополнительная диагностическая информация.

1 голос
/ 15 июля 2010

Проверьте ваши пути подсказок.Иногда там бывают устаревшие ссылки ...

Может быть, я могу дать хорошую рекомендацию при обращении к внешним библиотекам:

  • скопируйте ваши внешние библиотеки или скомпилированные материалы из других команд вашей компании нафайловый сервер разработки в формате:
  • создайте сценарий копирования для каждого файла решения и добавьте его в качестве элемента решения.Добавьте несколько команд xcopy для каждой внешней библиотеки, которую вы хотите с сервера dev для правильной сборки этого файла решения.
  • создайте сценарий для создания виртуального диска sub (с командой dos) и сопоставьте его с вашим рабочим пространством,например, диск R и активируйте этот скрипт при запуске Windows, чтобы он всегда был доступен.Этот скрипт предназначен для разработчика и имеет отображение в рабочую область для разработчиков.
  • создайте все ссылки на файлы, которые у вас есть, с отображением диска R в нем.Например: R: \ NiceLib \ 1.0 \ nicelib.core.dll

Таким образом, вы получите чистую TFS, используя только свои собственные источники и все скомпилированные материалы от внешних сторон или даже от других команд вВаша компания хранится на файловом сервере dev.

0 голосов
/ 24 января 2014

Я столкнулся с подобной проблемой при использовании Visual Studio 2010 TFS.После нескольких дней головного удара у меня сработали следующие шаги:

  1. Скопируйте все ваши внешние dll (dll, для которых TFS выдает ошибку) в отдельную папку.

  2. Регистрация в папке в исходном элементе управления (проверьте, были ли также проверены dll вместе с папкой. Если нет, проверьте их вручную.)

  3. В вашем проекте удалите DLL, которые выдают ошибку, и отошлите их снова из отдельной созданной папки.
  4. Сборка приложения и регистрация в проекте.
  5. Теперь отредактируйте определение сборки.Перейти на вкладку рабочей области.Добавьте рабочую область для отдельно добавленной справочной папки.
  6. В столбце управления исходным кодом выберите расположение отдельной папки, в которой вы отметили. В столбце «Агент построения» укажите путь с учетом структуры, в которой создается отдельная справочная папка.сохраните и запустите.

Объяснение: Путь, указанный в столбце «Агент сборки» для рабочей области, скопирует папку внешней ссылки на сервер сборки.Серверу сборки потребуется эта папка для сборки приложения.Примечание: не указывайте местоположение вашего бина в качестве ссылки на внешнюю DLL.Корзина будет удалена после очистки решения, и ссылки исчезнут.

...