ts project에 .js 형식 파일이 있을 경우
tsconfig.json의 첫번째 꺽쇠에서 아래와 같은 오류가 .js 파일 개수만큼 발생.
dev 모드 실행은 정상적으로 되나 build는 안되는 상황.
(VS Code에서 확인함)
오류 메시지>
Cannot write file {경로} because it would overwrite input file.
오류 해석 >
"내가 변환한 결과물을 src/index.js에 덮어쓰려 했는데, 이건 입력 파일이라 위험해서 안 돼"
🔍 언제 발생하나요?
이 오류는 보통 아래 경우에서 발생합니다:
- Babel, TypeScript, Webpack, tsc 등 빌드 도구가 src 폴더를 직접 덮어쓰려 할 때
- 예를 들어 tsc 명령어로 TypeScript를 컴파일할 때 outDir을 안 정했거나, rootDir과 outDir이 같을 때
✅ 해결 방법
{
"compilerOptions": {
"outDir": "dist", // <- build 결과물을 src 외 다른 폴더로 지정
"rootDir": "src"
}
}
이렇게 하면 src/index.js를 덮어쓰는 일이 없어져요.
아마 ts가 빌드되면 결국 js가 되기 때문에 빌드 결과물을 분리하여 저장하면 문제가 사라지는 듯함.
이렇게 설정하면 정상적으로 build가 가능해짐.
'오류' 카테고리의 다른 글
gsap timeline 진행 중 state(상태) 변경 시 애니메이션 끊김 (1) | 2025.08.12 |
---|---|
GSAP ScrollTrigger pin 오류 / 해결방안 추가 (2) | 2025.08.09 |
React 자식 요소의 리렌더링 방지 방법 (0) | 2025.05.21 |
배열의 원소 하나만 변경되어도 모든 자식 요소가 리렌더링되는 현상 (3) | 2025.05.20 |
Typescript 환경에서 image를 import 하지 못할 때 (0) | 2025.04.02 |