Electron Forge + Vite 에서 디버깅 설정하기

 ・ 2 min

photo by Max Fitz on Unsplash

Electron을 구동하는 방법에서 Electron Forge를 사용해서 기존보다 쉽게 만들 수 있어요.
Electron 사이트에는 Docs, API 위주로 찾아볼 때 많이 들어가고 Electron Forge에는 프로젝트 구성을 하기 위해 들어가요.

두 사이트 모두 디버깅을 위한 설정을 어떻게 하는지 알려주고 있어요. 저는 VS Code를 사용하고 있어서 이 프로그램에서 실행시키면서 디버깅을 할 수 있는 방법을 찾고 있었어요.

두 사이트에 나온 예제 중 두개 다 하라는대로 하고 실행시켰을 때 브레이크포인트가 빨갛게 나오지 않고 회색깔로 나오면서 브레이크포인트에 잡히지 않았어요. 🥲

gray-dot|500

잘되지 않아서 Vite 환경을 추가했기 때문에 안되는 것 같아서 구글에 electron forge vite debug 라는 키워드로 검색했고 이를 통해 답을 찾을 수 있었어요.

제가 찾은 링크에서 유용했던 건 Vite template - code editor debugger can't hit breakpoints 라는 깃허브 이슈였어요.

여기서 알려준대로 설정하면 다음과 같아요.
vite.main.config.ts와 launch.json에서 각각 한줄씩 추가해야 해요.

// vite.main.config.ts
export default defineConfig((env) => {
	// ...생략
	const config: UserConfig = {
		// ...생략
		build: {
			// ...생략
			// 이 부분을 추가해주세요!
			sourcemap: forgeEnv.command == 'serve' ? true : false,
		}
	}
}

sourcemap을 launch.json에도 추가하면 돼요.

{
    "configurations": [
      {
        "type": "node",
        "request": "launch",
        "name": "Electron Main",
        "runtimeExecutable": "${workspaceFolder}/node_modules/@electron-forge/cli/script/vscode.sh",
        "windows": {
          "runtimeExecutable": "${workspaceFolder}/node_modules/@electron-forge/cli/script/vscode.cmd"
        },
        // runtimeArgs will be passed directly to your Electron application
        "runtimeArgs": [
         "--sourcemap" // 이 부분을 추가해주세요!
        ],
        "cwd": "${workspaceFolder}",
        "console": "integratedTerminal"
      }
    ]
  }

이렇게 설정하시고 난 뒤에 디버깅 모드로 실행시키시면 브레이크포인트에 잡히실 거예요!

red-dot|500

그럼 Electron Forge + Vite + React 환경에서도 편하게 디버깅하면서 개발할 수 있어요!


Success is not the key to happiness. Happiness is the key to success. If you love what you are doing, you will be successful.

— Albert Schweitzer


Other posts
cover_image
 ・ 4 min

블로그에 사이트맵, 로봇 텍스트 추가하기

cover_image
 ・ 2 min

2024년도 예비창업패키지 탈락하고 쓰는 글

cover_image
 ・ 2 min

창업이 처음인 청년이라면 사업자 등록 혜택을 받아봐요!