2016-06-22 4 views
2

두 개의 간단한 독립 실행 형 명령 줄 프로그램이 있습니다. 각각은, (Program1.cs & Program2.cs 말) 하나의 소스 파일입니다 각각 static void Main(..)을 포함하고, 각각 하나의 독립 바이너리로 컴파일해야한다. 그것들은 관련되어있어서 단순화를 위해 하나의 디렉토리에 보관하고 싶습니다.하나의 .Net 핵심 프로젝트에서 2 개의 개별 exes를 만드시겠습니까?

.Net pre-Core를 사용하면 쉽게 빌드 할 수 있습니다. csc Program<x>.cs & out이 exe입니다.

닷넷 코어에 그 복제하는 방법이 있나요? 또는 2 개의 개별 프로젝트를 의미합니까? 지금까지 한 프로젝트에서 각각 별도의 진입 점이있는 2 개의 바이너리를 생성하는 방법을 찾을 수 없었습니다.

감사합니다.

-

  • 이들은 간단한 데모입니다. 단일 프로젝트 진입 점이있는 여러 소스 파일이있는 전형적인 프로젝트를 대표하지는 못합니다. 그러나 간단한 경우로 축소 할 수있는 능력 또한 중요합니다.
+0

확실하지. 다음, 솔루션 내 다른 프로젝트에 클래스를 놓고 : 솔루션 속성 -> 공통 속성 -> 시작 프로젝트 -> 여러 시작 프로젝트. – user5226582

+0

@ user5226582 그걸로 같은 디렉토리에 그들을 구축하지 않습니다. F5를 치면 둘 다 시작됩니다. –

+0

당신은 자동화 할 수 있습니다 : [복사 파일을 하나 개의 프로젝트에서 사용하여 다른 포스트 빌드 이벤트] (https://stackoverflow.com/questions/11001822/copy-files-from-one-project-to-another-using-post- build-event-vs2010) – user5226582

답변

2

각 프로그램에 대해 별도의 구성을 사용하고 해당 구성에서 컴파일 할 파일을 설정하는 것입니다. 귀하의 경우에는

, 당신의 project.json의 관련 부분은 다음과 같습니다

"configurations": { 
    "Program1": { 
    "buildOptions": { 
     "compile": { 
     "exclude": "Program2.cs" 
     } 
    } 
    }, 
    "Program2": { 
    "buildOptions": { 
     "compile": { 
     "exclude": "Program1.cs" 
     } 
    } 
    } 
} 

그런 다음 dotnet build -c Program1와 프로그램 1을 구축하고 dotnet run -c Program1와 유사 program2에 그것을 실행할 수 있습니다. 당신은 하나의 프로젝트로이 작업을 수행 할 수 있지만 단일 솔루션으로 할 수 있다면

+0

감사합니다. 좋은 해결책입니다. – sfinnie

관련 문제