https://github.com/KwonGeneral/KwonTemplate.git
GitHub - KwonGeneral/KwonTemplate: 안드로이드 스튜디오 커스텀 템플릿
안드로이드 스튜디오 커스텀 템플릿. Contribute to KwonGeneral/KwonTemplate development by creating an account on GitHub.
github.com
앱 개발을 하다보면 프레그먼트를 가장 많이 생성하는데, 안드로이드 스튜디오에서 제공하는 템플릿은 내가 개발하는 스타일과는 맞지 않아서 매번 지워줘야한다. 또한, 나는 프레그먼트를 만들면서 ViewModel도 같이 생성하는 편인데, 이 또한 매번 수작업으로 해주는게 귀찮다고 느껴졌다. 그래서 방법을 찾아본 결과, 직접 플러그인 형태로 템플릿을 만들어서 내가 원하는대로 커스텀해서 사용할 수 있다는 것을 알아냈다.
이 글의 목적은 개발 방법을 공유하고 개발하면서 느낀점을 작성하기 위함이다. 지극히 주관적이고 뇌피셜이기 때문에 참고용으로만 봐줬으면 좋겠다.
1. 기본 템플릿 뼈대 가져오기
https://github.com/JetBrains/intellij-platform-plugin-template
GitHub - JetBrains/intellij-platform-plugin-template: Template repository for creating plugins for IntelliJ Platform
Template repository for creating plugins for IntelliJ Platform - GitHub - JetBrains/intellij-platform-plugin-template: Template repository for creating plugins for IntelliJ Platform
github.com

Use this template를 눌러서 내 깃허브 저장소로 가져온다.
2. 프로젝트 생성


3. gradle.properties 수정

수정할 여지가 있는 부분
pluginVersion: 플러그인 버전
platformPlugins: 해당 플러그인에서 사용할 플러그인
javaVersion: 사용할 JDK 버전
StudioCompilePath, StudioRunPath: 안드로이드 스튜디오 경로
여기서, pluginVersion은 앱 버전 명시하듯이 입맛대로 하시면 되고, platformPlugins은 위 스크린샷과 똑같이 적어주면 된다. javaVersion은 11이나 1.8 등등 입맛에 맞게 설정하면 된다.
StudioCompilePath, StudioRunPath 이 2개는 추가로 작성해줘야 하는데, 안드로이드 스튜디오 경로를 적어주면 된다. Mac의 경우에는 Application 경로로 잡혀있을 것이고, Windows 같은 경우에는 위 스샷 경로가 디폴트일 것이다.
4. build.gradle.kts 수정

plugins에다가 위 스샷처럼 적어주면 되는데, 주석 처리한 부분은 해당 코드로 빌드하는 과정에서 오류가 나서 방법을 찾다가 주석 아래의 코드로 빌드해서 해결했다.

다음으로 intellij에다가 위 스샷의 빨간 동그라미 친 부분을 추가해주면 된다. downloadSources는 Gradle 빌드를 초기화하는 동안에 intelliJ 소스를 다운로드 해야할지에 대한 여부이다. 위 처럼 적지 않고, true & false로 적어줘도 된다. updateSinceUntilBuild는 plugin.xml까지 패치를 적용할지에 대한 여부이다. localPath는 gradle.properties에서 작성한 안드로이드 스튜디오 경로이다. IDE를 실행할 때, 안드로이드 스튜디오로 실행하기 위해서 선언해준다.
5. src\main\resources\META-INF\plugin.xml 수정

해당 부분을 추가해주면 된다. 여기서 extensions를 추가로 작성해야 하지만, 순서대로 알려주기 위해서 나중에 적도록 하겠다.
'아카이브 > 일기' 카테고리의 다른 글
| Flutter - Windows 초기 설정 (0) | 2022.03.28 |
|---|---|
| Android Custom Template Plugin 개발 (4) (0) | 2022.03.16 |
| Android Custom Template Plugin 개발 (3) (0) | 2022.03.16 |
| Android Custom Template Plugin 개발 (2) (0) | 2022.03.16 |
| LG UPLUS Project - ZPLAN 마케팅 시작 (0) | 2022.03.07 |
| LG UPLUS - 프로젝트를 1차 납품했다. (0) | 2022.02.16 |
| 400일차 - Android Room Data Export(Backup) / Import(Recovery) (2) (0) | 2022.02.08 |
| 399일차 - Android Room Data Export(Backup) / Import(Recovery) (1) (0) | 2022.02.07 |