Как отследить устаревшие конфигурации сборки в VS 2008? - PullRequest
1 голос
/ 09 октября 2008

У меня есть большое решение, содержащее много проектов на C #. Когда я открываю решение и нажимаю F5 в первый раз, я получаю ошибки компиляции, подобные следующим:

Ошибка 3 Не удалось найти файл метаданных 'C: \ Users \ david \ Documents \ VS.Projects \ CeoTrunk \ Ceoimage \ bin \ x86 \ Release \ Ceoimage.dll'.

Я компилирую решение и проекты, выдающие ошибку "Debug (Any CPU)", и долгое время не выбирал "Release (x86)". Может быть, месяцы. Эти ошибки исчезают после того, как я впервые создаю решение для «Debug (Any CPU)». Если я закрою решение и снова нажму F5, проблема появится снова.

Где может скрываться этот остаток "Release (x86)"? Как мне от этого избавиться? Почему он продолжает возвращаться?

1 Ответ

2 голосов
/ 09 октября 2008

Не видя вашего решения и файлов проекта, вот что я предлагаю.

  1. Очистите ВСЕ каталоги obj и bin (желательно, удалите ваш источник и получите свежую копию).
  2. Попробуйте полную сборку и посмотрите, все ли не получится. Если это так ...
  3. Повторите шаг 1.
  4. Проверьте ссылки на каждый проект и убедитесь, что они ссылаются на другие проекты как на ссылки на проекты, а не на прямые ссылки на их выходные сборки.
  5. Попробуйте выгрузить проекты и перестроить, чтобы увидеть, можете ли вы определить нарушающий элемент.

К сожалению, это может привести к циклической зависимости или некоторому другому сложному дереву зависимостей, что означает, что Visual Studio изо всех сил пытается определить действительный порядок сборки, поэтому для завершения процесса требуется несколько сборок.

...