Поделиться через


Предупреждение. Невозможно скопировать зависимость <файл> из проекта <проект> в каталог выполнения, поскольку она перезапишет ссылку <файл>.

Обновлен: Ноябрь 2007

Warning: the dependency 'file' in project 'project' cannot be copied to the run directory because it would overwrite the reference 'file.'

Имеет место конфликт зависимостей — предпринимается попытка скопировать несколько разных файлов сборок с одинаковыми именами в папку "Bin" для запуска приложения. Папка запуска может разрешить конфликт, так как одна из зависимостей является основной ссылкой.

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

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

Другими словами, данная ошибка происходит потому, что проекты в решении ссылаются друг на друга, но эти ссылки были созданы как файловые ссылки (с помощью кнопки Обзор в диалоговом окне Добавить ссылку), а не как ссылки между проектами (с помощью вкладки Проект диалогового окна Добавить ссылку). Преимущество ссылок между проектами состоит в том, что с их помощью в системе построения проектов создается зависимость между проектами, так что зависимый проект будет построен заново, если он изменился с момента последнего построения ссылающегося на него проекта. Файловая ссылка не учитывается при построении, поэтому ссылающийся проект может быть построен без перестройки зависимого проекта, и, таким образом, ссылка может устареть, т.е. указывать на устаревшую версию зависимого проекта. Это может привести к ситуации, когда в папке "Bin" будут требоваться несколько версий одной библиотеки DLL, что невозможно. В результате, выдается данное сообщение об ошибке.

Это сообщение появляется, когда происходит конфликт в папке "Bin" и приложение не может работать должным образом. Сообщение об ошибке будет появляться, даже если обойти эту проблему, потому что система работы с проектами не может определить, будет ли данная версия зависимого файла работать правильно со всеми компонентами.

Исправление ошибки

См. также

Задачи

Практическое руководство. Создание и удаление зависимостей проекта

Основные понятия

Ссылки проекта

Глобальный кэш сборок