2017-10-26 3 views
0

Visual Studio 코드를 처음 사용합니다. 내 csproj에서 출력 디렉토리를 정의하고 싶다. Visual Studio에서 어디에서 변경 해야할지 모르겠다. 생성 된 dll 파일을 찾기 위해 대상 폴더를 코드화하십시오.Visual Studio 코드에서 기본 빌드 출력 디렉터리를 변경하는 방법 코드

+0

오른쪽 프로젝트를 클릭하지 그것을가 될 것 >> Properties >> Build >> Output >> 출력 경로는 일반적인 비주얼 스튜디오와 비슷합니까? – Lithium

+0

아니요 ... Visual Studio 코드에서이 방법으로 작동하지 않습니다. –

답변

2

VSCode는 dotnet CLI를 사용하며 특히 dotnet build 명령을 작성하는 데 사용됩니다.

{ 
    "version": "2.0.0", 
    "tasks": [ 
     { 
      "taskName": "build", 
      "command": "dotnet build", 
      ... 
     } 
    ] 
} 

당신은 원하는 경로와 -o 인수를 추가 할 수 있습니다 : 다른 사람의 사이에서, 그것은 .vscode/tasks.json 파일에 정의되어 건물의 작업을 가정하면 다음과 같은 옵션

-o|--output <OUTPUT_DIRECTORY> 
Directory in which to place the built binaries. 

있습니다.

... 
"command": "dotnet build -o ${workspaceRoot}/bin/another_Debug/", 
... 

${workspaceFolder}이 VSCode predefined variables 중 하나입니다 : 예를 들어,에 변경

$ {workspaceFolder}는 tasks.json 파일이 들어있는 작업 공간 폴더의 경로

0

VSCode, VS 및 dotnet CLI에서 일관된 동작을 원하면 csproj 파일을 편집하여 다음을 추가하여 출력 경로를 설정하는 것이 좋습니다.

<PropertyGroup> 
    <OutputPath>..\custom-output-dir\</OutputPath> 
    <!-- Remove this if you multi-target and need the created net*, netcoreapp* subdirs --> 
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath> 
</PropertyGroup> 

둘째 속성은 다중 대상 빌드에 필요한 대상 프레임 워크의 하위 디렉터리를 SDK가 추가하지 못하도록하지만, 단일 프레임 워크 (= TargetFramework 속성 만있는 경우)를 대상으로하지는 않습니다.

예를 들어, 경로를 설정할 때 다른 속성을 사용할 수 있습니다 :

<OutputPath>..\custom-output-dir\$(Configuration)\$(MSBuildProjectName)\</OutputPath> 

프로젝트가 MyProj.csproj입니다 가정하면, 출력 경로는 다음 ..\cusotm-output-dir\Debug\MyProj\

관련 문제