Visual Studio Code에서 Ruby On Rails 애플리케이션 디버깅

Ruby on Rails용 VS 코드 디버거

나는 RubyMine을 구입하기 위해 많은 돈을 지불하고 싶지 않았고 지금까지 내 코드를 디버깅할 수 없는 상태에서 지내왔기 때문에 Ruby에서 코딩하는 동안 Visual Studio Code를 IDE로 사용하고 있습니다. 지금까지 디버깅할 필요가 없었던 유일한 이유는 제가 여전히 Ruby와 Rails를 배우고 있기 때문에 제가 작성하고 있는 코드가 문제가 발생했을 때 수정하기가 그리 어렵지 않기 때문입니다. 그러나 나는 최근에 막혔고 무엇이 잘못되었는지 파악하는 데 오랜 시간이 걸렸고 디버거 설정이 있었으면 좋겠다고 생각하기 시작했습니다.

멋진 사람들이 우리가 사용할 플러그인과 보석을 만들었기 때문에 실제로 설정하는 것은 정말 쉽습니다.

따라서 가장 먼저 할 일은 VS Code에 Ruby plugin을 설치하는 것입니다. 이 플러그인은 디버깅을 활성화하는 것 이상의 기능을 수행하지만 플러그인 페이지의 정보가 좋은 시작이라는 점을 직접 알아보도록 하겠습니다.



완료되면 IDE가 표시하는 데 사용할 수 있는 디버깅을 실제로 수행하는 gem을 설치해야 합니다. 사용 중인 Ruby 버전에 따라 약간 다른 gem을 설치해야 합니다.

# Ruby 1.8.x
gem install ruby-debug-ide
gem install ruby-debug-base</pre>

# Ruby 1.9.x
gem install ruby-debug-ide
gem install ruby-debug-base19x</pre>

# Ruby 2.x
gem install ruby-debug-ide
gem install debase

# Ruby 3.x
gem install ruby-debug-ide
gem install debase

완료되면 launch.json에 구성을 추가해야 합니다.

VS Code의 왼쪽에 있는 디버그 탭으로 이동합니다. Ruby용 launch.json 파일에 구성을 추가해야 합니다.

아래처럼 느리게 create launch.json 링크를 클릭하지 않은 경우



create launch.json 링크를 클릭하면 드롭다운이 표시되고 첫 번째 Ruby를 선택한 다음 다음 드롭다운에서 Rails 서버를 선택하면 파일이 생성됩니다.



launch.json이 있으면 '구성 추가'를 클릭합니다.

'Ruby: Rails 서버' 옵션을 선택합니다. 다음과 같은 구성을 추가합니다.

발사.json







레일스 서버에 기본 포트(3000)가 아닌 다른 포트를 사용하려면 다음과 같은 인수에 지정할 수 있습니다.




"args": [
    "server",
    "-p",
    "3100"
]


이제 드롭다운에서 선택한 Rails 서버 옵션으로 실행을 클릭하면 디버그 모드로 시작되고 계속 및 건너뛰기와 같은 디버그 옵션이 있는 작은 메뉴가 화면 상단에 나타납니다.

이제 서버가 디버그 모드에서 시작되었으므로 일부 중단점을 추가하여 코드를 실행하고 무슨 일이 일어나고 있는지 확인할 수 있습니다. 그래서 저는 제 코드에 중단점을 넣었고 무슨 일이 일어나는지 보도록 하겠습니다.





이제 이 메서드를 호출하면 중단점에 도달하면 일시 중지됩니다. 브라우저에 있었다면 VS Code가 열리고 다음 동작을 기다려야 합니다.





이 시점에서 계속(f5) 또는 건너뛰기(f10)를 눌러 일반 실행을 계속할지 결정할 수 있으며 몇 가지 옵션이 더 있습니다. 당신이 내릴 수 있는 또 다른 결정은 변수의 상태와 화면 왼쪽을 보는 것만으로도 훨씬 더 많은 정보를 보는 것입니다. 아래는 변수 섹션의 모습을 보여주는 이미지입니다.





변수나 개체를 볼 수도 있습니다.



Visual Studio Code를 사용하여 Rails 서버를 디버깅하는 방법에 대한 이 기사의 끝입니다. 디버깅을 활성화하면 이미 유용한(그리고 무료!) IDE를 훨씬 더 좋게 만들 수 있습니다. 즐겁게 디버깅하세요!



잘못된 부분을 찾는 데 도움이 되기를 바라며 코드 동작에 대한 전체적인 그림을 보고 싶다면? AppMap은 이를 도울 수 있는 도구이며 여기 dev.to에서 사용 방법에 대한 게시물이 있습니다. -



이 가이드가 귀하와 귀하의 팀에 도움이 되었다면 다른 사람들과 공유하십시오!

좋은 웹페이지 즐겨찾기