티스토리 뷰


nodejs 8+

좀 웃기는 상황이다. 내가 개발하는 피씨는 여러개인데 그 중에 한대가 vscode, atom 등의 개발툴이 먹통인데 원인은 찾지 못하고 ... ( 대충 짐작은 간다만... 해결 불가능한 이슈임. ) 

 

그래서 nodeclipse를 사용하려고 한다. 안되는 피씨에서는 nodeclipse를 되는 맥북이나 윈도우에서는 vscode를 ... 

 

그래서 nodeclipse를 쓰려고 테스트로 디버깅을 해보다가 저 에러 메세지를 만났다!

Failed to connect to Standalone V8 VM

nodeclipse는 node 디버깅 시에 --debug 옵션으로 5858포트에 붙게 되어있는데 nodejs 8이상 버전부터는 --inspect 옵션과 9229 포트를 사용해야 디버깅이 가능하다. 

 

즉... nodeclipse가 너무 낮은 버전으로만 세팅되어 있다는 것이다. 해당 버전의 문제는 아래 nodeclipse 소스를 보면 확인할 수 있다. 

 

https://github.com/Nodeclipse/nodeclipse-1/blob/master/org.nodeclipse.debug/src/org/nodeclipse/debug/launch/LaunchConfigurationDelegate.java#L114

 

Nodeclipse/nodeclipse-1

Nodeclipse-1 : Eclipse plugin for Node.js, PhantomJS development (Nodeclipse core plugin); Maven and Gradle (with Android) plugins - Nodeclipse/nodeclipse-1

github.com

위 깃헙 링크에 있는 문제의 디버깅하는 소스 부분 발췌~

if (isDebugMode) {
    // -brk says to Node runtime wait until Chromium Debugger starts and connects
    // that is causing "stop on first line" behavior,
    // otherwise small apps or first line can be undebuggable.
    String brk = "-brk" ; //default "-brk"
    if (preferenceStore.getBoolean(PreferenceConstants.NODE_DEBUG_NO_BREAK)) //default false
    brk = "";
    // done: flexible debugging port, instead of hard-coded 5858
    // #61 https://github.com/Nodeclipse/nodeclipse-1/issues/61
    int nodeDebugPort = preferenceStore.getInt(PreferenceConstants.NODE_DEBUG_PORT);
    if (nodeDebugPort==0) { nodeDebugPort=5858;};
    cmdLine.add("--debug"+brk+"="+nodeDebugPort); //--debug-brk=5858
}

결국 --debug 로 옵션이 정해져있기 때문에 nodeclipse의 소스를 고쳐서 다시 빌드하여 넣지 않는 이상은 node 8 이상의 버전은 사용할수 없다는 얘기다. 

 

결국 울며 겨자먹기로 node 7 버전을 다운받아 설치했다. 

 

https://nodejs.org/dist/latest-v7.x/

 

Index of /dist/latest-v7.x/

 

nodejs.org

나는 윈도우 7 , 64bit 니까 

 

node-v7.10.1-x64x.msi를 다운받아 설치했더니 디버깅이 아주 잘 되었다!!

 

하지만 node 버전의 선택이 자유롭지 못한 개발툴이니까 조만간 다른 개발툴을 찾아봐야겠다.

 

https://www.slant.co/topics/46/~best-ides-for-node-js

 

Slant - 19 Best IDEs for Node.js as of 2020

Visual Studio Code, WebStorm, and Vim are probably your best bets out of the 19 options considered. "Integrated debugging" is the primary reason people pick Visual Studio Code over the competition. This page is powered by a knowledgeable community that hel

www.slant.co

https://nodeclipse.github.io/#support

 

Nodeclipse, Enide -- Node.JS development in Eclipse

Home Projects SHARE Logos Download Enide Enide Studio REST CLIENT Video News Feeds History Hints Help tweet Nodeclipse & Enide now at https://nodeclipse.github.io /noʊdˈklɪps/ , AnIDE

https://nodejs.org/ko/docs/guides/debugging-getting-started/

 

디버깅 - 시작하기 | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org


댓글
최근에 올라온 글
최근에 달린 댓글