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


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

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

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

25 88

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, он существует для вашего файла проекта? Если не добавляйте его и попробуйте еще раз.

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

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

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

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

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

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

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

Delete this bad boy.

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

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

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

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

Я убрал Platform переменные среды (был мини-гостиница или что-то вроде этого). Проблема исчезла.

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

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

Встроенный $ / ProjectDirectory / ProjectName.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>

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

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

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

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

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

Проект X ссылается на проект Y
Проект Г

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

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

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

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

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

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

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

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

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

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

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

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

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

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

У меня была та же проблема. Я исправил это путем очистки и перестроил проекты.

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

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

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

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

BUILD - > Configuration Manager ->

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

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

Если кто-то получает это в своих журналах NCrunch, проверьте, если PropertyGroup определение значения 'отладка'/'освобождение' и 'любой ЦП'/'х86' расположенном до группы свойств, использующие эти значения в своем состоянии.

<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>

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

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