본문 바로가기

Tools/IntelliJ

IntelliJ Plugin 만들기(3) - 플러그인 추출하고 배포하기

안녕하세요! 이번 포스팅에서는 전 포스팅에서 만들었던 예제를 추출하고 배포해보도록 하겠습니다.

모든 코드는 Github에 올려두었습니다!


목차

  1. IntelliJ Plugin 만들기(1) - 프로젝트 생성하기, pom.xml 살펴보기, Action 정의하기
  2. IntelliJ Plugin 만들기(2) - Action 정의하기 & UI 만들기
  3. IntelliJ Plugin 만들기(3) - 플러그인 추출하고 배포하기

 

플러그인 추출

1. build.gradle 버전, 그룹 변경

플러그인을 추출하기 전, 버전을 변경하기 위해 build.gradle에서 설정을 수정합니다.

build.gradle

...
group 'me.shinsunyoung'
version '1.0'
...

첫 프로젝트이기 때문에 버전을 1.0으로 설정하고, 그룹을 적절하게 수정했습니다.

그 이후에 gradle Import를 해줍니다.

 

2. 설정 파일 변경

플러그인을 적용하기 전, 플러그인에 대한 설명이나 제작자, 버전 노트를 추가해야 합니다.

먼저, build.gradle에서 아래 코드를 제거해줍니다.

build.gradle

// 삭제
patchPluginXml {
    changeNotes """
      Add change notes here.<br>
      <em>most HTML tags may be used</em>"""
}

그 후에, plugin.xml에 들어가서 플러그인에 대한 정보나 제작자 정보, 패치 노트 등을 적어주면 됩니다.

plugin.xml

<idea-plugin>
    <id>org.example.blog_example</id>
    <name>Parrot PopUp</name> <!-- 플러그인 이름 -->
    <vendor email="ajufresh@gmail.com" url="https://shinsunyoung.tistory.com/">fresh</vendor> <!-- 제작자 정보 -->

		<!-- 설명 -->
    <description><![CDATA[ 
    <h1> 여기에 설명을 적으면 됩니다! </h1>
    <p> html 태그를 이용합니다. </p>
    ]]></description>

		<!-- 패치 노트 -->
    <change-notes><![CDATA[
      여기에는 변경된 내용을 적는 곳입니다.
      New project initiate.
    ]]>
    </change-notes>

...
</idea-plugin>

필요에 따라 호환성, 의존성을 추가해주어야 하지만,

이번 프로젝트에서는 따로 설정해줘야 하는 게 없기 때문에 다른 설정은 건들지 않고 넘어가겠습니다.

 

3. 플러그인 추출

플러그인을 zip 파일로 추출해보도록 하겠습니다.

intelliJ 우측메뉴 - Gradle - Tasks - intellij - buildPlugin을 클릭합니다.

성공했다는 안내문구가 뜨면,

intelliJ의 왼쪽 메뉴 - build - distributions에 zip 파일이 생긴것을 확인할 수 있습니다.


플러그인 적용 및 배포

1. 내 프로젝트에 적용하기

shift 두 번 - Plugins에 들어가서 톱니바퀴 모양의 아이콘을 누른 후에,

Install Plugin from Disk ... 를 클릭합니다.

그리고 아까 추출했던 경로에서 zip 파일을 선택하면 됩니다.

(만약 경로를 찾기 어려울 것 같으면 파일을 복사해서 찾기 편한 경로로 붙여넣어도 좋습니다.)

 

그 후에 intelliJ를 재시작하면 로컬에 깔린 것을 확인할 수 있습니다.

 

설정해둔 단축키를 누르면 플러그인이 정상적으로 작동하는 것을 확인할 수 있습니다!

 

2. 플러그인 올리기

여기서부터 사용하는 캡쳐본은 예전에 만들어둔 플러그인을 업로드하면서 찍어둔 캡쳐본들입니다!

 

Plugins | JetBrains

위 링크에 가서 로그인해준 후에 이름을 클릭하고 Upload plugin을 클릭합니다.

그 후에 파일은 아까 추출한 zip 파일을 업로드해주고, 정보를 채워준 후에 폼을 제출하면 됩니다.

 

플러그인은 폼을 채운다고 바로 등록이 되는 것이 아닌,

2영업일 내에 제출한 플러그인을 검사하고 문제가 없다면 marketplace에 등록해줍니다.

 

검토해보고 문제가 없다면 플러그인을 올렸다는 메일을 보내줍니다.

만약 문제가 있다면 수정 요청 사항을 답신으로 줍니다.

이제 다른 사람도 intelliJ의 Market Place에서 다운로드를 받을 수 있습니다!


마치며

이렇게 배포하는 과정까지 모두 끝났습니다. 정말 간단한 예제이지만 조금이라도 도움이 되셨으면 좋겠습니다!

그리고 저는 개발 중에 구글링을 하면 잘 안나오는게 있어서 이곳저곳 뒤져봤는데, IntelliJ IDEA Open API and Plugin Development에서 개인적으로 많은 도움을 받았습니다. 혹시나 구글링을 해도 원하는 정보가 나오지 않으면 이 링크에서 찾아보면 도움이 될 것 같습니다!

그리고 공식 튜토리얼도 정말 잘되어있으니 한 번쯤 읽어보셔도 좋을 것 같습니다! 읽어주셔서 감사합니다. 😊