PHPStorm Plugin 개발 | #2. 프로젝트 환경 설정 및 실행

보람·2022년 4월 24일
0

IDE-PLUGIN-만들기

목록 보기
3/7
post-thumbnail

(해당 글은 개발하면서 수정될 수 있습니다.)

보일러템플릿을 이용해 프로젝트 생성하려면 (벨로그링크)로 이동👍

내가 제일 두려워하는 환경설정을 하였다.(뿌듯💕)

그전에..

환경변수(Environment variables)

Gradle 구성에 사용되는 일부 값은 버전 제어 시스템에 게시되지 않도록 파일에 저장해서는 안된다.

이를 방지하기 위해 환경 변수가 도입되어 IDE 내의 실행/디버깅 구성 또는 GitHub의 경우처럼 CI에 제공할 수 있다.

내 작업 레포 > Settings > Secrets 에 네가지 프로젝트 환경변수를 추가해야한다.

현재 프로젝트에서 사용하는 환경 변수는 플러그인 서명 및 게시와 관련이 있다.

(네개의 값을 생성해야하는데 한두시간동안 뻘짓했는데 다른 문서에 있는걸 발견했다😩😩 교훈 : 문서..꼭 잘 읽기)

링크를 참고해서(그냥 아래글만 봐도 무방하다) 아래 2개의 값을 생성한다.

  • PRIVATE_KEY : cat private.pem
openssl genpkey\
  -aes-256-cbc\
  -algorithm RSA\
  -out private.pem\
  -pkeyopt rsa_keygen_bits:4096
  
$ cat private.pem

아래와 이미지와 같이 추가추가..

  • PRIVATE_KEY_PASSWORD : private.pem 생성시 입력했던 패스워드 값
  • CERTIFICATE_CHAIN : cat chain.crt 해서 나온 값 추가
openssl req\
  -key private.pem\
  -new\
  -x509\
  -days 365\
  -out chain.crt
  
  $ cat chain.crt
  • PUBLISH_TOKEN : JetBrains Marketplace 프로필에서 생성된 토큰, 플러그인 마켓에 올릴때 필요한 것 같다.

    생성하고 한번만 보여주고 다시 안보여주니까 바로 복사할 것!!

네개 모두 생성 완료!!😙
tmi) PUBLISH_TOKEN 생성 시간만 차이나는 이유는? 20분간 뻘짓했다는 뜻🌝

gradle.properties

gradle.properties 파일에 설명된 구성 변수를 수동으로 검토하고 선택적으로 com.github.username.repository 패키지의 소스를 사용자에게 가장 적합한 패키지로 변경해야 한다. 그러면 프로젝트를 구현하기 위한 작업을 시작할 수 있다.

인텔리제이 플랫폼 템플릿을 받으면 기본적으로 gradle.properties도 작업자가 선언한 프로젝트 명에 맞춰서 생성된다.

수정하고 빌드하는데 안되길래 찾아보니 platformVersion버전은 platformPlugins과 호환이되는걸 적어야한다고 한다.

PHPStorm 플러그인을 만들려고 호환되는 플러그인을 아래처럼 했는데

  • platformPlugins = com.jetbrains.php:221.5080.224
    • 221은 22년도1월출시란 뜻
  • platformVersion = 2021.3

이런식으로 하면 빌드실패한다!

# phpStorm 플러그인 IntelliJ Ultimate으로 개발해야함 
platformType = IU

# IntelliJ 플랫폼 IDE 버전은 플러그인을 빌드하는 데 사용
# platformVersion버전은 platformPlugins과 호환이되는걸 적어야함!
platformVersion = 2022.1

# 지원되는 ide 버전
# Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html
# Example: platformPlugins = com.intellij.java, com.jetbrains.php:221.5080.224
#,로 구성된 종속성 목록 아래는 phpstorm
platformPlugins = com.jetbrains.php:221.5080.224

플러그인 구성 파일 - plugin.xml

plugin.xml 파일은 플러그인, 종속성, 확장 및 리스너에 대한 일반 정보를 제공한다.

PHPStorm 플러그인을 만드는 것이기 때문에 depend에 아래와 같이 추가해야한다.

    <depends>com.jetbrains.php</depends>
    <depends>com.intellij.modules.platform</depends>

플러그인 실행(Run Plugin)

보일러플레이트템플릿을 깔면 기본적으로 플러그인을 실행해볼 수 있도록 지원해준다.

오른쪽 상단에 "Run Plugin" 플레이 버튼을 누른 후 원하는 프로젝트를 선택하면 새로운 IDE가 열린다.

그런데.. 아래와 같은 빨간 메시지가 나면서 추가한 툴바가 보이지 않는다.

WARN - #c.i.i.p.PluginManager - Problems found loading 생략 plugin Requires plugin 'com.jetbrains.php' to be enabled

com.jetbrains.php to be enabled

나 php 쓰는데.. 뭔소리지..
반나절은 이것때문에 검색하고 그랬는데
결론은.. 간단했다!!
(Run Plugin) 해서 나오는 IDE에서 PHP Plugin을 설치해주면 끝!

안됐을때 문제가 아래와 같다.

PHP에 체크하고 재시작하면!!


생겼다!!(감동..🥺🥺)

얼추 원하는 플러그인을 만들수는 있겠다 싶었던 시간이었다🌝🌝

환경설정은 얼추 끝났으니..
다음글에서는 툴바를 추가하여 내부 로직을 구현하는 것에 대해 작성할 예정이다.

profile
백엔드 개발자

0개의 댓글