카테고리 보관물: IntelliJ IDEA

IntelliJ IDEA 원격 개발 연동하기

혹시 IntelliJ IDEA Backend 원격 접속에 어려움을 겪고 계신가요.
원격 서버에 접속하는 방법을 간단히 요약해 보겠습니다.

원격 서버로 사용하는 머신이 Windows나 MacOS는 아직 지원을 하지 않습니다. 참고로 저의 개발 머신은 우분투 리눅스를 사용하고 있으므로, 가능합니다. Windows나 MacOS는 이후에 지원한다고 하니 참고하시기 바랍니다.

Jetbrains에서 IntelliJ IDEA로 원격개발이 가능하도록 기능이 추가된지도 시간이 좀 흘렀습니다. 저는 종종 주 작업 장비에서 작업하지 못할 때 사용하는데, 꽤 유용합니다. IntelliJ IDEA 구독을 연장한 이유가 이것 때문이었습니다. 자, 각설하고 본론으로 들어가겠습니다.

우선 클라이언트의 ssh 개인키와 공개키 쌍을 만듭니다. ssh-keygen 후 경로의 조건을 변경하지 않으면, ~/.ssh/id_rsa 라는 private key가 생성되고, 이와 동시에 id_rsa.pub라는 공개키도 생성됩니다. 이렇게 생성된 것을 가정하고 다음 단계로 넘어가겠습니다.

cd ~/.ssh
ssh-keygen

첫째, 클라이언트의 공개키 ~/.ssh/id_rsa.pub의 내용을 서버의 ~/.ssh/authorized_key에 추가해 줍니다. 이렇게 해 두면 클라이언트에서 서버에 바로 접근할 수 있습니다. 말 그대로 해당 클라이언트의 키를 인증해 주는 과정입니다.

vi ~/.ssh/authorized_key

둘째, IntelliJ IDEA에서 Remote Development의 Connect via SSH를 선택합니다.

Remote Development 진입화면
Remote Development 진입화면

셋째, Connection에는 New Connection을 선택해 주시고요, ssh 연결에 필요한 계정명 osolgil을 Username에, 주소 192.168.0.38은 Host에, ssh 포트 번호 22를 Port에 입력해 줍니다. 이제 우측 하단의 Check Connection and Continue를 선택해 줍니다. 이미 클라이언트의 공개키를 서버에 인증키로 등록해 두었으므로 별도로 private key를 선택하지 않아도 됩니다.

이제 성공적으로 연결됐다는 메시지와 함께 앞서 입력했던 접속 경로가 나오고, IDE 버전이 나옵니다. Back-end의 프로젝트 경로를 설정해 줍니다. 우측의 폴더 아이콘을 누르면 경로를 선택할 수 있습니다. 선택 후 우측 하단의 Download and Start IDE를 누르면 원격 IDE를 다운 받고, 프로젝트가 열립니다.

이제 원격으로 개발하시면 됩니다.

원격 접속이 안 돼서 failed to connect to IDE backend connection refused와 같은 메시지가 나와서 어려움을 겪으신 분들께 도움이 되길 바랍니다.

JetBrains IntelliJ IDEA 싸게 사는 방법

JetBrains에서 취급하는 IDE 가격이 얼마 전 10월 1일부로 가격도 전면 인상돼서 부담이 크시죠.
심지어 환율까지 올라서 엎친데 덮친 격입니다.
10월 1일자로 가격이 인상되는 걸 몰라서 그 이전에 갱신을 못하셨다면, 지금부터라도 싸게 사는 법 확인해 보세요.

환율

지금 환율이 1400원을 넘었습니다. 급하지 않다면 환율이 꺾일 때까지 좀 기다리시면 싸게 살 수 있습니다. 문제는 언제 환율이 떨어질지 확실하지 않다는 점, 그리고 당장 IDE를 구매해야 하는데 환율을 생각할 여지가 없다면 아래로 내려갑니다.

JetBrains IDE 정책

구독

기본적으로 알고 넘어가야 할 것이 있어서 말씀드립니다. JetBrains의 IDE는 모두 구독 형태를 띠고 있으며, 월 단위 갱신과 년 단위 갱신이 있습니다. 년 단위로 갱신하면 10개월치의 가격으로 12개월의 구독을 제공합니다.

재구독

1년 단위의 재구독을 하는 경우 가격이 할인 됩니다. 최초 1년 구독 후, 2년 차 구독시에는 20% 할인을 해 줍니다. 3년차 구독시에는 40% 할인을 해 줍니다. 따라서 지속적으로 사용해야 한다면, 재구독을 통해 많은 할인을 받을 수 있습니다.

폴백 라이선스

사실, 재구독보다도 더 엄청난 것이 있습니다. IDE는 해마다 수차례 새로운 버전으로 출시되고 있습니다. 과거에 비해서 사용하는 기능은 크게 달라지지 않습니다. 그럴 때에는 라이선스 구독 당시의 버전으로 영구적으로 사용할 수 있는 Fallback License가 있습니다. 이를테면, 구매 시점에 IntelliJ IDEA 버전이 2021.2까지 출시된 상태였다면, 폴백라이선스는 2021.2 버전이 됩니다. 해당 버전으로 설치하면 1년이 지난 이후에도 갱신하지 않고 계속 사용할 수 있습니다. 마음에 드는 버전이라면 굳이 더 갱신할 필요가 없겠죠. 대신에 이후 출시되는 플러그인이 설치되지 않는 일이 있을 수 있습니다.

스페셜 오퍼

무료

무료로 쓸 수 있는 줄 모르셨을까요? 무료로 사용하는 방법이 있습니다.

  1. 학생 및 교사는 무료로 이용할 수 있습니다.
  2. 강의실 지원용으로 무료로 사용할 수 있습니다.
  3. 비상업적인 오픈 소스 프로젝트 지원 프로그램 요건을 충족하면 무료로 이용할 수 있습니다.
  4. 교육 과정, 코딩 학교 및 부트캠프는 100% 할인쿠폰을 신청해서 교육 기간 동안 최대 6개월까지 무료로 이용할 수 있습니다.
  5. 인증된 개발자(Google Developers Expert, Java Champion, Docker Captain, Microsoft MVP, Gradle Fellow, Embarcadero Most Valuable Professional, ASPInsider)에게 All Products Pack을 무료로 제공합니다.
  6. 사용자 그룹용으로 1~3개월마다 모이는 기술 커뮤니티에서 추첨 상품으로 무료 라이선스를 받을 수 있습니다.

50% 할인

반 값 할인을 해 주는 경우가 있습니다.

  1. 대학 및 교육 기관에서 내부 프로젝트 및 애플리케이션 개발에 사용하는 경우 50% 할인을 받을 수 있습니다.
  2. 설립한지 5년 이내의 스타트업 기업에 50% 할인을 제공합니다.
  3. 등록된 비영리 단체는 비즈니스 모델에 따라 25~50% 할인을 받을 수 있습니다.

25% 할인

  1. 과거에 학생용 라이선스를 보유했던 적이 있으면, 졸업 할인으로 25% 할인을 받을 수 있습니다. 교육과정, 코딩학교 및 부트캠프의 학생도 동일한 25% 졸업 할인을 받을 수 있습니다.
  2. 경쟁사 제품 사용자에게 25% 할인을 제공합니다.

이벤트

어쩌다가 JetBrains 블로그나 행사 등에서 할인 코드를 푸는 경우가 있습니다. 그럴 때 받은 코드로 할인 받을 수도 있습니다.

근데, 언제 쿠폰 코드를 풀지 모르니 마냥 기다리긴 힘들겠죠.

개인 경험

저는 과거에 EditPlus를 사용한 적이 있어서, 해당 증빙 자료를 첨부해서 JetBrains에 제출하고, 경쟁사 제품 사용자 25% 할인 혜택을 받았었습니다. 그리고, 해마다 갱신을 하다가 이번 10월 1일 가격 인상 전 갱신을 마지막으로 할 예정입니다. 왜냐면 IntelliJ IDEA에 1년전 제품엔 원격 개발 모드가 없었거든요. 그런데 지금은 제법 안정적으로 작동하고 원격 개발을 이용해 보면 생각보다 편리하게 이용할 수 있습니다. 일단 현재 버전으로 Fallback License로 향후 이용할 예정인데, 뭐 사람 일이라는 게 어찌될 지 모르니 또 1년 있어봐야겠죠.

조금이라도 JetBrains 제품 싸게 구매하는 데 도움이 되시길 바랍니다.

IntelliJ IDEA에서 한글 입력이 안 되는 현상(Ubuntu 18.04, UIM 입력기)

최근에 IntelliJ IDEA 2019.3 으로 업데이트 후 한글입력이 안되는 현상이 발생했다.
그래서 Jetbrains에 문의하였다.

한글입력을 위해서 UIM(벼루)을 사용하고 있었고, IDEA 2019.2에서는 작동했지만, 업데이트 후 작동하지 않음을 보고 했다.

idea.log를 첨부해달라는 메시지를 보고, idea.log를 살펴봤는데, 문제가 되는 로그를 확인했다.

2019-12-26 21:13:15,112 [ 10848] INFO – ntellij.idea.ApplicationLoader – canDisableInputMethod spent 33 ms, found keyboard layouts: [(us, xkb), ], result==true
2019-12-26 21:13:15,209 [ 10945] INFO – #com.intellij.idea.Main – InputMethods was disabled

UIM은 영문입력기만 있으면 되고, 한글 입력기가 별도로 필요없다.

그런데, 영문 입력기 하나만 있으면 IDEA에서 canDisableInputMethod를 true로 반환하는 것이다. 그러니 Shift + Space를 눌러도 아무 반응이 없이, Space 처리만 되면서 한글을 입력할 수 없었던 것이다.

그래서 ibus용 한글 입력기를 하나 추가한 이후에 다음과 같은 로그를 확인했다.

2019-12-26 21:24:45,771 [ 11841] INFO – ntellij.idea.ApplicationLoader – canDisableInputMethod spent 77 ms, found keyboard layouts: [(hangul, ibus), (us, xkb), ], result==false

이제서야 IDEA에서 한글 입력이 잘 된다. 물론 입력기는 그냥 영문으로만 선택해 놓고, UIM을 사용하여 한글을 입력한다.

ibus를 사용하면 웹 브라우저에서 한글 입력이 자음만 되는 이상한 현상이 있어서 UIM을 사용하고 있다.

어쨌든 이렇게 해결을 했다.

Jetbrains에서 관련 이슈를 파 줬다.
https://youtrack.jetbrains.com/issue/JBR-2049

동일한 문제로 어려움을 겪는 분에게 도움이 됐으면 좋겠다.