Когда я пытаюсь скомпилировать свой проект из режима отладки x86 в Visual Studio 2008. Я получаю эту ошибку. Когда я посмотрел на группу свойств проекта, который пожаловался, я увидел, что путь вывода установлен.
Вот раздел группы свойств для этого файла .csproj
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x86\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
Может ли кто-нибудь пролить свет на это?
ПРИМЕЧАНИЕ. Когда я скомпилировал эту отладку и любой процессор, он работал.
ОБНОВЛЕНО: Ошибка 1 Свойство OutputPath не задано для этого проекта. Убедитесь, что вы указали допустимую комбинацию конфигурации / платформы. Конфигурация = 'Отладка' Платформа = 'x86'
c#
visual-studio
Amzath
источник
источник
Ответы:
У меня была такая же ошибка после добавления новой конфигурации через ConfigurationManager в Visual Studio.
Оказалось, что когда конфигурация «Производство» была добавлена для всего решения (и каждого проекта), элемент OutputPath не был добавлен в файлы .csproj.
Чтобы исправить это, я перешел на вкладку «Сборка» в свойствах проекта, изменил OutputPath с
\bin\Production\
на\bin\Production
( завершение удалено\
) и сохранил изменения. Это принудительное создание элемента OutputPath в файле .csproj, и проект был успешно построен.Для меня это похоже на сбой.
источник
any cpu
иanycpu
, но ваш пост помог мне это увидеть.Вы можете увидеть эту ошибку в VS 2008, если в вашем решении есть проект, который ссылается на сборку, которую невозможно найти. Это могло произойти, если сборка была получена из другого проекта, который не является частью вашего решения, но должен быть. В этом случае простое добавление правильного проекта к решению решит проблему.
Проверьте раздел «Ссылки» для каждого проекта в своем решении. Если у кого-то из них есть ссылка с красным крестиком рядом с ней, значит, вы нашли свою проблему. Эта ссылка на сборку не может быть найдена решением.
Сообщение об ошибке немного сбивает с толку, но я видел это много раз.
источник
Если вы используете WiX, посмотрите на это (есть ошибка) http://www.cnblogs.com/xixifusigao/archive/2012/03/20/2407651.html
Иногда новые конфигурации сборки добавляются в
.wixproj
файлу дальше по файлу, то есть отделяются от их определений конфигураций-братьев другими несвязанными элементами XML.Просто отредактируйте
.wixproj
файл так, чтобы все<PropertyGroup>
разделы, определяющие ваши конфигурации сборки, находились рядом друг с другом. (Чтобы отредактировать.wixproj
файл в VS2013, щелкните правой кнопкой мыши проект в обозревателе решений, выгрузите проект, щелкните еще раз правой кнопкой мыши -> Изменить YourProject.wixproj. Перезагрузите после редактирования файла.)источник
Это случилось со мной, потому что я переместил следующую строку ближе к началу файла .csproj:
Его необходимо разместить после PropertyGroups, определяющего вашу конфигурацию | платформу.
источник
Ошибка, показанная в Visual Studio для проекта (скажем, A), не имеет проблем. Когда я посмотрел на окно вывода для сборки построчно для каждого проекта, я увидел, что он жаловался на другой проект (B), который упоминался как сборка в проекте A. Проект B добавлен в решение. Но в проекте A он не упоминался как ссылка на проект, а не как ссылка на сборку из другого места. В этом месте находится сборка, скомпилированная для платформы AnyCpu. Затем я удалил ссылку на сборку из проекта A и добавил проект B в качестве ссылки. Началась компиляция. Не уверен, однако, как это исправление работало.
источник
"any cpu"
значение по умолчанию для BuildPlatform. Переход к"AnyCPU"
решенной проблеме.Я столкнулся с той же ошибкой, но проблема оказалась в том, что я создал новую конфигурацию в своем решении, которой не было в ссылочных сборках из другого решения.
Эту проблему можно решить, открыв соответствующее решение и добавив к нему новую конфигурацию.
Это сообщение натолкнуло меня на мысль проверить сборки, на которые есть ссылки, после того, как я уже подтвердил, что все проекты в моем решении имеют правильную конфигурацию:
http://gabrielmagana.com/2010/04/solution-to-the-outputpath-property-is-not-set-for-this-project/
источник
эта проблема возникла на выходе из Azure DevOps после настройки сборки .csproj вместо .sln в конвейере сборки.
Решение для меня: отредактируйте .csproj затронутого проекта, затем скопируйте весь свой
Node, вставьте его и измените первую строку следующим образом:
Причина в том, что в моем случае ошибка сказала
Почему Azure хочет использовать «any cpu» вместо «AnyCpu» по умолчанию, для меня загадка, но этот прием работает.
источник
У меня была такая же ошибка, поэтому я посмотрел настройки проекта и там в разделе «Сборка» есть опция «Путь вывода сборки». И значение было пустым. Итак, я ввел значение "мусорное ведро", ошибка исчезла. Это решило мою проблему.
источник
У меня есть:
Скопируйте и вставьте конфигурацию из существующей конфигурации, которая работает с определенным именем и целевой платформой (у меня была Release | x64 ):
источник
Если вы получаете эту ошибку только при попытке скомпилировать свой проект из командной строки с помощью MSBuild (как в моем случае), то решение состоит в том, чтобы вручную передать выходной путь в MSBuild с аргументом вроде
/p:OutputPath=MyFolder
.источник
Еще одна безумная возможность: если вы следуете простой схеме управления версиями, в которой Branch \ Main, Main и Release размещаются рядом друг с другом, и вы каким-то образом добавляете существующий проект из Main вместо Branch \ Main (при условии, что ваше рабочее решение - Branch \ Main), вы можете увидеть эту ошибку.
Решение простое: укажите правильный проект!
источник
Я столкнулся с этой проблемой, когда добавлял проект в решение, а затем ссылался на него из другого проекта в том же решении - над ссылкой появился желтый значок предупреждения, обратите внимание, что путь пуст.
Решение было похоже на то, что предлагал @Amzath, мои проекты компилировались с разными целевыми фреймворками, например. .NET 4.0 против 4.5.
источник
В моем случае встроенный адрес моего приложения был установлен на другой компьютер, который был выключен, поэтому я включил его и перезапустил VS, и проблема была решена.
источник
Другая причина: вы добавляете ссылку на проект из проекта A в проект B в решении X. Однако решение Y, которое уже содержит проект A, теперь не работает, пока вы также не добавите проект B в решение Y.
источник
У меня была такая же проблема после того, как я добавил новые конфигурации и удалил конфигурации «отладка» и «выпуск». В моем случае я использовал cmd-файл для запуска процесса сборки и публикации, но возникла та же ошибка. Решение для меня: в файле csproj следующее:
устанавливал для Конфигурации значение «Отладка», если я не указывал явное значение. После изменения значения узла с «отладки» на мою настраиваемую конфигурацию все работало гладко. Надеюсь, это также поможет тем, кто это читает :)
источник
У меня была такая же проблема, просто отредактируйте .wixproj, чтобы все
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' ... >
элементы располагались рядом.Это решило мою проблему
источник
Проект WiX, который я использовал, был жестко настроен в диспетчере конфигурации по
x64
всем направлениям. При создании проекта настраиваемого действия для решения по умолчанию все было вx86
пределах.csproj
файла. Итак, я выгрузил проект, отредактировал его, изменив всеx86
наx64
, сохранил, перезагрузил, и после этого все было в порядке.Не понимаю, зачем мне это пришлось делать. Диспетчер конфигурации был настроен на сборку как x64, но просто не был установлен в
csproj
файле :(источник
Попробовав все остальные предложения, размещенные здесь, я обнаружил, что решением для меня было удалить следующий раздел из
.csproj
файла:Очевидно, эта служба из исходного проекта (недоступная на локальной машине) останавливала весь процесс сборки, хотя для компиляции это не было существенным.
источник
У меня возникла эта проблема после добавления новой платформы в мой проект. В моем случае файл .csproj находился в системе контроля версий Perforce и был доступен только для чтения. Я проверил это, но VS не заметил изменений, пока я не перезапустил его.
источник
У меня была аналогичная проблема в проекте Xamarin. Это может быть редкий случай, но на тот случай, если проблема возникла у кого-то еще. моя структура проекта была такой, как показано ниже
источник