"свойство outputpath не задано для этого проекта" ошибка

У меня есть решение для нескольких проектов в Visual Studio 2008. Я просто добавил новую конфигурацию под названием Release-VersionIncrement в решение, указав конфигурацию "use release" в качестве базовой линии. Все файлы проекта были обновлены с этой конфигурацией. Однако, когда я пытаюсь скомпилировать конкретный проект с помощью этой конфигурации, я получаю следующую ошибку:

Ошибка 5 свойство OutputPath не набор для этого проекта. Пожалуйста, проверьте убедитесь, что вы указан допустимая конфигурация / платформа сочетание. Configuration= 'Release-VersionIncrement' Platform= 'AnyCPU' C:WINDOWSMicrosoft.NETFrameworkv3.5Microsoft.Common.targets 539 9 DataConversion

Что здесь происходит? Проект отлично компилируется в конфигурации Release или Debug.

25 ответов


обычно это происходит, когда свойство OutputPath файла проекта пустое. Файлы проекта просто MSBuild файлы. Для редактирования в Visual Studio: щелкните правой кнопкой мыши на проекте, выберите "выгрузить проект", затем щелкните правой кнопкой мыши на выгруженном проекте и выберите "Изменить"...".

найдите группу свойств Release-Versionincrement. Это должно выглядеть как

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release-VersionIncrement|AnyCPU' ">
  <OutputPath>bin\Release-VersionIncrement\</OutputPath>
  <DefineConstants>TRACE</DefineConstants>
  <Optimize>true</Optimize>
  <DebugType>pdbonly</DebugType>
  <PlatformTarget>AnyCPU</PlatformTarget>
  <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
  <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
  <ErrorReport>prompt</ErrorReport>
</PropertyGroup>

важный там это OutputPath, он существует для вашего файла проекта? Если не добавляйте его и попробуйте еще раз.


Я также видел эту ошибку, когда наш агент сборки был настроен для запуска платформы"любой CPU "(с пробелами, как показано в Visual Studio), а не"любой ЦП" (одно слово, указанное в файле проекта).


У меня была та же проблема, когда я сначала использовал MSBuild. Мое решение: определенно используйте свойство OutputPath. Вот так:

msbuild XXX.csproj /p:OutputPath=bin\Debug.

в нашем случае мы запускали сценарий сборки на наших коробках разработчиков HP. У HP есть некоторые переменные среды, которые они настроили для своих целей, и одна из них-платформа (используемая, по-видимому, для "HP Easy Setup").

удаление переменной среды платформы сработало.

вы также можете в будущем проверить свой скрипт сборки, указав платформу, т. е.
msbuild /p:Platform=AnyCPU.


Если Visual Studio специально жалуется ,что "Platform= 'BPC'", то вы можете легко исправить это, удалив переменную среды" платформа".

Delete this bad boy.

теперь перезапустите Visual Studio и вы хорошо идти.


Как "Ричард Дингуолл " намекнул, проблема связана с VS с использованием дисплей версия "любой ЦП "вместо версии MSBuild, которая фактически читает"любой ЦП"

перейдите в Build / New Build Definition или Edit Build Definition - > Process - > конфигурации для сборки, откройте диалог выбора конфигурации и в "платформа" вместо "любой ЦП", вручную добавить "любой ЦП"


Как было сказано, поле "выходной путь" должен быть установлен и он должен быть помещен до <Import Project="$(WixTargetsPath)" /> in .файла wixproj


Я убрал Platform переменная среды (был BNB или smth, как это). Проблема исчезла.


я добавлял платформу x64 в мое решение сегодня, когда я столкнулся с этой проблемой.

в моем случае, ошибка чтения:

Встроенный $ / ProjectDirectory / Имяпроекта.csproj для целей по умолчанию. c:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets (484): свойство OutputPath не задано для project ProjectName.csproj файл'. Убедитесь, что вы указали допустимое сочетание конфигурации и платформы для данного проекта. Configuration='Debug' Platform='x64'. Возможно, вы видите это сообщение, потому что пытаетесь построить проект Без файла решения и указали конфигурацию или платформу, не существующую по умолчанию для этого проекта.

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

Аха! Visual Studio пытается построить Configuration='Debug', Platform='x64'. Глядя на мой файл проекта, я понял, что x64 не был указан в качестве одной из возможных платформ. Другими словами, у меня были следующие записи (сокращенные):

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
      <PlatformTarget>x86</PlatformTarget>
      <OutputPath>bin\x86\Debug\</OutputPath>  
      . . .  
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
      <PlatformTarget>x86</PlatformTarget>
      <OutputPath>bin\x86\Release\</OutputPath>    
      . . .
  </PropertyGroup>

простое исправление: просто добавьте записи x64!

я копирую / вставляю записи x86 и изменяю их для использования x64. Обратите внимание, что я также изменил пути, чтобы они не перезаписывали сборки x86:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
      <PlatformTarget>x64</PlatformTarget>
      <OutputPath>bin\x64\Debug\</OutputPath>    
      . . .
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
      <PlatformTarget>x64</PlatformTarget>
      <OutputPath>bin\x64\Release\</OutputPath>    
      . . .
  </PropertyGroup>

Я strugged с этим на некоторое время и затем также выгрузили, построили, а потом перезагрузка нарушителя проект в решение, и тогда в MSBuild правильно функционировал.


Как Скотт S, Я должен был удалить переменную среды "платформа".

затем перезапустите VS, и все в порядке: больше нет сообщения об ошибке...


проблема была связана с моей конфигурацией проекта. Вот сценарий:

решение ссылки:

Project X references Project Y
Проект Г

решение B (то, которое я пытаюсь построить) ссылки:

Проект X Проект Z

моим решением было создать конфигурацию с тем же именем для решения A, перестроить ее, а затем перестроить решение B. это исправило проблема.


У меня было такое же сообщение об ошибке. Это было вызвано ссылкой на проект, который был выгружен и не требовался компоновщиком (в противном случае он потерпел бы неудачу во время компиляции). Удаление оскорбительной ссылки решило проблему.


в моем случае (VS2010) я удалил строку в поле "OutputPath", которое находится на вкладке "Build", и оставил ее пустой. Затем я перестроил решение. Сборка прошла успешно, и VS вставил текущий каталог "./" в "поле" выходной путь"". Я заменил текущий каталог "./ "с моим путем ("bin\x64\Release\" -- достаточно сказать, что это точный путь к папке, который был VS жаловался в первую очередь), и перестроение было успешным снова.


в моем случае OutputPath было установлено свойство в файлах проекта. Но разгрузка, перегрузка, а затем восстановление исправили его.


когда я добавил новую конфигурацию решения в мое решение, я получил ошибку: "свойство OutputPath не установлено для проекта X. пожалуйста, проверьте, чтобы убедиться, что вы указали допустимую комбинацию конфигурации и платформы для этого проекта. Платформа конфигурация='ОК'='любой ЦП'. эта ошибка может также появиться, если какой-либо другой проект пытается следовать ссылке проекта к проекту для этого проекта, этот проект был выгружен или не включен в решение, и ссылка на проект не строится с использованием той же или эквивалентной конфигурации или платформы. ProjectY".

в моем случае проблема была вызвана выделенной частью описания ошибки. Проект X частью моего решения была ссылка проекта на проект другого решения (другой ветви).

Я решил эту проблему, изменив проект X, чтобы использовать ссылку проекта на проект в текущем решении. Надеюсь, это поможет кому-то с подобной проблемой.


в моем случае новый XML-блок "PropertyGroup" был создан в нижней части документа. Я только что заменил его после других тегов "PropertyGroup", и это решило проблему.


Я создал новый проект в новом решении, которое ссылается на существующие проекты. Эта ошибка возникает, когда я добавляю существующий проект (скажем, проект 1) и пытаюсь построить без добавления других проектов, на которые ссылается проект 1.

просто убедитесь, что все связанные проекты добавлены в новое решение, и ошибка исчезнет.


У меня была такая же ошибка, поэтому я посмотрел на настройки проекта, и там в разделе "сборка" есть опция "построить выходной путь". И ценность была пуста. Поэтому я заполнил значение " bin\", ошибка исчезла. Это решило мою проблему.


Если вы решили установить OutputPath как param, и ваш путь похож:bin\Release\ тогда не забудьте добавить \ в конце вот так:/p:OutputPath=bin\Release\\ мне потребовалось некоторое время, чтобы понять, что это так


У меня была та же проблема. Я исправил его с помощью clean и перестроил проекты.


У меня была та же проблема, и единственным решением, которое помогает, было установить конфигурацию сборки вручную в каждом проекте NCrunch.

откройте окно NCrunch, где вы можете увидеть состояние каждой сборки и где вы можете увидеть, что сборка терпит неудачу. Щелкните правой кнопкой мыши на проекте, который не удается построить, и нажмите "Настроить выбранный компонент", там вы увидите в разделе "настройки сборки" свойство "использовать конфогурацию сборки" установите его, например, "отладка" и свойство" использовать платформу сборки" это, например,"AnyCPU". (Обратите внимание, что настройки сборки и настройке должны существовать в настройках konfigration)

сделайте это для всех ваших проектов, но не для тестового проекта. После этого у меня все хорошо.


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

BUILD - > Configuration Manager ->

В Колонке Конфигурации Добавить

Примечание: это произошло только потому, что у меня есть пользовательская конфигурация, а недавно созданные проекты не имели конфигурации.


Если кто-то получает это в своих журналах NCrunch, проверьте, если PropertyGroup определение значений 'Debug'/ 'Release' и 'AnyCPU' / 'x86', расположенных до группы свойств, использующие эти значения в их состоянии.

<PropertyGroup>
    <!-- this one first -->
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <XXX>...</XXX>
  </PropertyGroup>

<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
    <XXX>...</XXX>
</PropertyGroup>

<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
    <XXX>...</XXX>
</PropertyGroup>

работал для меня.


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