작업 상태

- vscode에서 express 작업중이었습니다.

- vscode node-terminal 설정 후 사용시 발생한 현상입니다.

        {
            "command": "npm run dev",
            "name": "client 3500",
            "request": "launch",
            "type": "node-terminal"
        }

  
에러 상황

원인

- 근본 원인은 확인하지 못했고 현상에서 원인은

1. nodemon은 변경사항을 확인하고 재시작합니다.

2. vscode에서 디버그 모드 시작시 설정파일을 변환해서 사용하는듯 합니다.

3. vscode에서 vite.config.js 이파일을 잠시 temp파일로 만들고 삭제하려 합니다. > nodemon이 변화감지 후 재시작 > vscode로 변화감지후 설정 재변경을 위한 파일 생성을 서로 사이좋게 주고받습니다.


처리

- nodemon에서 임시파일 변경 감지를 제거합니다.

 

기존 package.json설정입니다.

    "scripts": {
        "dev": "cross-env NODE_ENV=development nodemon server.js",

수정후

    "scripts": {
        "dev": "cross-env NODE_ENV=development nodemon server.js --ignore './vite.config*.mjs",

참고

 

nodemon을 사용할 때 자주 쓰이는 주요 옵션들은 다음과 같습니다.

-e, --ext [ext]: 모니터링할 파일의 확장자를 설정합니다. 예를 들어, -e js,hbs와 같이 사용하면 확장자가 .js와 .hbs인 파일을 모니터링합니다.
-i, --ignore [pattern]: nodemon이 모니터링하지 않을 파일의 패턴을 설정합니다. 정규 표현식으로 작성할 수 있습니다.
-w, --watch [path]: 모니터링할 디렉토리를 설정합니다. 여러 개의 경로를 설정할 수 있습니다.
-V, --version: nodemon의 버전 정보를 출력합니다.
-h, --help: 도움말을 출력합니다.

 

nodemon --help 치면 좀더 자세히 나옵니다.

작업 상태
- querydsl을 vscode에서 작업하던중 발생했습니다.

- vscode 사용중이었고 querydsl 설정은 완료되었고 vscode에서 springboot 시작중에 나온에러입니다.


에러 메시지 

- Project 'back' is missing required source folder: 'src/main/generated/querydsl'

- The type QBoard is already defined


원인

- Q..Entity를 사용했는데 없어서 나오는 에러입니다.


처리

- gradle로 생성해 줍니다.  gradle project > Tasks> ohters > compileQuerydls 실행

생성후 > Entity를 기준으로 Q클래스가 생성됩니다.

- Q클래스들을 생성후 boot를 실행시키면 경우에 따라서 또 다시 아래와 같은 에러가 발생하는 경우가 있습니다.

- The type QBoard is already defined

- 이 에러가 발생한 경우 vscode일 때 새로 생성된 Q클래스들을 인식시키기 위해 전부 생성된 Q클래스들을 클릭해서 열어줍니다.

전부 클릭해서 인식시키후 상황

- 이후 실행하면 정상 실행 됩니다.


참고

- BUILD FAILED in 1s
0. error: Could not find class file com.a3040.member.Member 등 :back:compileQuerydsl FAILED 이 나올경우

이미 Qclass가 생성되어 있는지 확인 queryDsl 이미 실행되어 compileQuerydsl실행 후 프로젝트에 관련 Qclass.java 파일들이 존재하면 발생합니다.

1. 생성된 Qclass가 있는 폴더를 삭제합니다.  > 이후 실행하면 Qclass가 없어서 실행이 안됩니다.

2. gradle project > Tasks> ohters > compileQuerydls 실행 > Qclass는 생성되었으나 이번에는 The type QBoard is already defined: <--이 에러로 실행 안됩니다.

3. vscode에서 자동 생성된 class를 인식시킵니다. 다 열어봄 > 잘 실행 됩니다.

4. 이상태에서 뭔간 변경되어 수정하고 compileQuerydls을 실행할경우 이번에는 기본 Entity 클래스가 없다는 에러가 발생합니다.  0번 부터 다시 확인합니다.

+ Recent posts