2017-12-19 16 views
0

私は複数のプロジェクトのソリューションを持っており、生成されたすべてのin/obj成果物を別のフォルダに配置したいと考えています。Visual Studio Mac:他の場所でobj/binフォルダを出力できませんか?

は私が設定してみてください:しかし

<Project Sdk="Microsoft.NET.Sdk"> 

    <PropertyGroup> 
    <TargetFramework>netstandard2.0</TargetFramework> 
    </PropertyGroup> 

    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
    <DebugType>portable</DebugType> 
    <OutputPath>..\Bin\Core\Debug\</OutputPath> 
    <IntermediateOutputPath>..\Bin\Core\obj\</IntermediateOutputPath> 
    </PropertyGroup> 
    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    <OutputPath>..\Bin\Core\Release\</OutputPath> 
    <IntermediateOutputPath>..\Bin\Core\obj\</IntermediateOutputPath> 
    </PropertyGroup> 
    <ItemGroup> 
    <Compile Include="Library.fs" /> 
    </ItemGroup> 

</Project> 

  1. objフォルダは、まだ元の場所に再作成されます。 も希望の場所にありますが、空白です。
  2. "パッケージを復元"すると "1"が表示され、目的の場所に配置されません。
  3. プロジェクトがビルドされると、objフォルダが作成されます。

これはバージョンです:

Macバージョン7.3.2(12ビルド)ランタイムのためのVisual Studioコミュニティ2017: モノ5.4.1.7(2017から06/e66d9abbb27)(64ビット)

NuGetバージョン:4.3.1.4445

.NETコアランタイム:は/ usr/local /共有/ DOTNET/DOTNETバージョンデティエンポデ ejecución:2.0.0 SDK:は/ usr/local /共有/ DOTNET/sdk/2.0.0/SdksVersión デルSDK:2.0.0 SDKデMSBuildの: /Library/Frameworks/Mono.framework/Versions/5.4.1/lib/mono/msbuild/15.0/bin/Sdks

答えて

0

この問題は固有ではありませんMac用のVisual Studio。コマンドラインからドットネットを使用する場合、同じ現象が発生します。 Mac用のVisual Studioに

、およびDOTNETのCLI、OBJディレクトリはNuGetパッケージを復元するには、プロジェクトディレクトリに作成および復元によって生成されたファイルだけが含まれます:

  • MyProject.csproj.nugetを.cache
  • MyProject.csproj.nuget.g.targets
  • MyProject.csproj.nuget.g.props
  • project.assets.json

ビルドファイルは、../Bin/Core/Debugおよび../Bin/Core/objディレクトリに作成されます。

BaseIntermediateOutputPathを設定することで、任意の動作を取得できます。ただし、プロジェクトファイル自体に設定すると、problemsが発生する可能性があります。

最も簡単な解決策は、ソリューションディレクトリにDirectory.Build.propsファイルを作成し、そこにBaseIntermediateOutputPathプロパティを設定することです。

<Project> 
    <PropertyGroup> 
    <BaseIntermediateOutputPath>..\Bin\Core\obj\</BaseIntermediateOutputPath> 
    </PropertyGroup> 
</Project> 

生成されたNuGetリストアファイルは、必要なディレクトリに作成されます。

Visual Studio for Macは、プロジェクトが開かれても空のobjディレクトリを作成したいが、復元またはビルド後にファイルが存在しないようだ。

+0

これは2つのプロジェクトを設定した後、 "動作"しますが、\ Bin、\ Bin \ Coreの中に別のnetstandard2.0フォルダを作成します。 – mamcx

+0

ああ!パスに最後に "\"がある場合は起こります。 – mamcx

関連する問題