본문 바로가기
Skills/Asp.net

bin과 obj 폴더의 역할

by Hoseok 2024. 9. 7.
728x90
반응형

 

 

 

bin과 obj 폴더는 일반적으로 .NET 프로젝트에서 중요한 역할을 합니다.

이 두 폴더는 주로 빌드 및 배포와 관련된 폴더로, 프로젝트가 컴파일되고 실행될 때 필요한 파일들을 관리합니다.

 

bin 폴더


역할
- 프로젝트가 빌드될 때 생성된 실행 파일(assembly)과 필요한 의존성 파일을 포함합니다.
- 주로 .dll 파일(컴파일된 어셈블리), 배포 시 필요한 구성 파일(예: .pdb, .config) 및 외부 라이브러리 파일이 위치합니다.

주요 파일
- 프로젝트의 컴파일 결과물: 컴파일된 어셈블리 파일(예: MyProject.dll).
- 참조된 외부 라이브러리: NuGet 패키지에서 가져온 외부 .dll 파일.
- PDB 파일: 디버깅 정보를 포함한 파일 (예: MyProject.pdb).

웹 배포 시 중요: bin 폴더에 있는 파일들은 배포 시 서버에 업로드되어 실행되므로, 배포 과정에서 중요한 역할을 합니다.

.NET에서:  
- 서버는 bin 폴더에 있는 어셈블리와 라이브러리를 로드하여 요청을 처리합니다.
- bin 폴더는 프로젝트가 배포될 때 필요한 모든 런타임 파일들을 포함하는 중요한 배포 폴더입니다.

 

obj 폴더


역할
- 빌드 프로세스에서 중간 빌드 파일을 저장하는 폴더로, 주로 프로젝트가 빌드될 때 사용됩니다.
- obj 폴더는 컴파일러가 소스 코드를 컴파일하여 bin 폴더에 최종 어셈블리를 생성하기 전에 임시로 파일을 저장하는 장소입니다.

주요 파일
- 중간 파일: .dll 파일, .pdb 파일, 프로젝트 파일의 복사본 등이 포함됩니다.
- MSBuild 관련 파일: 프로젝트 파일(.csproj)의 컴파일 프로세스와 관련된 중간 파일.
- 기타 파일: 프로젝트의 타겟 플랫폼 및 구성(예: Debug, Release)에 따른 빌드 중간 결과물.

.NET에서:
- obj 폴더는 빌드 과정에서만 필요하고, 실제 배포에는 포함되지 않습니다.
- 일반적으로 개발 중 빌드 프로세스를 최적화하기 위해 사용되며, bin 폴더에 최종 결과물이 복사되기 전의 임시 저장소로 사용됩니다.

 

요약


bin 폴더: 최종적으로 컴파일된 어셈블리와 배포에 필요한 파일이 저장됩니다. 배포에 포함됩니다.

obj 폴더: 빌드 프로세스 중에 생성된 중간 파일들이 저장되는 임시 폴더입니다. 배포에 포함되지 않으며, 빌드 과정에서만 사용됩니다.

이 두 폴더는 일반적인 .NET 프로젝트의 빌드 및 배포 과정에서 중요한 역할을 합니다.

728x90
반응형