팀프로젝트 도중, vercel 배포를 하는데 다른 자잘한 오류를 다 수정하고 마지막에
error: can't parse json file
이라는 오류가 발생했다. 찾아도 잘 나오지 않아서 애를 먹었는데 결국 오류에 나온 그대로 json파일 문제였다.
처음에 모든 json 파일을 json 유효성 검사 사이트에 확인을 했는데 주석을 빼라는 것 외에는 아무 문제가 없었다.
json에는 우리가 사용하는
/**/
또는//
주석 사용이 안 된다고 한다. 공식적으로 지원하지 않지만 대안적으로 아래와 같은 방식을 사용하기도 한다.{ "_comment": "이 객체는 사용자 정보를 담습니다.", "name": "John", "age": 30 }
그래서 주석을 제거하고도 안 되서 일단 각자 찾아보기로하고 끝났다.
내 local repo를 team remote repo와 동기화시킨 다음에 브런치 하나 test용으로 만들어서 이것저것 해보다가 env 오류인가해서 (헛다리였다.) yarn add vercel
했는데 안 되서 잘 보니
Usage Error: Invalid package.json in package.json
이런 에러가 나와서 또 json에서 나는 에러가 이상해서 다시 들어가보니까 package.json
에 문제가 발생됐다. 공용 레포를 동기화 시키면서 공용 레포에 있던 오류가 내 로컬 레포에 들어온 것 같다.
오류가 발생한 package.json
을 다시 유효성 검사를 해보니 이번에는 오류가 발생하는 것ㅠㅠ!
{
"_comment": "이 객체는 사용자 정보를 담습니다.",
"name": "John",
"age": 30, //json에는 마지막 프로퍼티에 콤마가 있으면 에러가 난다.
}
콤마 하나 제거해주니 바로 배포가 됐다.
팀플하면서 처음에 필요한 라이브러리를 깔았는데 코드 짜다보니 각자 필요한 라이브러리를 하나씩 추가하면서 발생하는 충돌을 제거하는 작업을 하다가 package.json
에서 어떤 맨 마지막에 있는 프로퍼티를 제거해서 콤마가 remote repo에만 남아있었던 것 같다. ㅠㅠ
처음에 remote repo의 package.json
을 유효성 검사를 했으면 삽질 안 했을텐데... 또 하나 배워간다.