簡體   English   中英

沒有為此項目設置Outputpath屬性 - F#

[英]The Outputpath property is not set for this project - F#

當我在Visual Studio 2012下創建一個新的F#應用程序並構建它時,會發生同樣的錯誤:

錯誤1未為項目'TestingF.fsproj'設置OutputPath屬性。 請檢查以確保您為此項目指定了有效的配置和平台組合。 Configuration ='Debug'Blatter =''。 如果某個其他項目正在嘗試遵循項目到項目對此項目的引用,此項目已卸載或未包含在解決方案中,並且引用項目不使用相同或等效項目構建,則也可能出現此錯誤配置或平台。 C:\\ Windows \\ Microsoft.NET \\ Framework \\ v4.0.30319 \\ Microsoft.Common.targets 592 5 TestingF

嘗試使用Configuration Manager修改Configuration | Platform並卸載項目並編輯.fsproj文件。

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<Tailcalls>false</Tailcalls>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<WarningLevel>3</WarningLevel>
<PlatformTarget>AnyCPU</PlatformTarget>
<DocumentationFile>bin\Debug\TestingF.XML</DocumentationFile>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>

使用任何其他.Net語言都不會發生同樣的錯誤。

萬一其他人遇到這個問題,這里是如何解決它

問題類似於Gustavo在上一個答案中解決的問題,但對於F#項目 ,似乎還有另外一個問題需要解決。
我在VS2013 Update 2中遇到過這個問題。 編輯平台設置后 ,在Configuration Manager中添加x64平台時出現問題。

該問題與.fsproj文件中某些XML標記順序有關 請參閱下面的正確.fsproj文件。

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" ...>
  <Import Project=.../>
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    ...
    <RestorePackages>true</RestorePackages>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    ...
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <Tailcalls>true</Tailcalls>
    ...
  </PropertyGroup>
  <PropertyGroup>
    <MinimumVisualStudioVersion Condition="'$(MinimumVisualStudioVersion)' == ''">11</MinimumVisualStudioVersion>
  </PropertyGroup>

發生的情況是,有時,在Configuration Manager中編輯配置后,配置平台的一個或多個PropertyGroup標記( Debug | x64或Release | x64 )已在文件中向下移動

因此,只需編輯fsproj文件並向上移動這些標記即可。 例如,將它們移動到定義MinimumVisualStudioVersion的組之前,如示例中所示。 保存,重新加載項目並編譯。

看一下錯誤:

[...]確保您已為此項目指定了Configuration和Platform的有效組合。 Configuration ='Debug'Blatter =''。 此錯誤也可能出現[...]

Visual Studio正在嘗試構建Platform ='',Configuration ='Debug'。 但是,您發布的項目文件指定了以下配置:

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

也就是說,它告訴Visual Studio如何構建'Debug'/'AnyCPU',而不是'Debug'/''。

如果您在其中插入“AnyCPU”,它應該會為您提供您正在尋找的結果。

可以在此處找到更詳細的答案: https//stackoverflow.com/a/13372073/556595

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM