English

The IntelliJ Platform: a Framework for Building Plugins and Mining Software Data

Software Engineering 2021-10-04 v1

Abstract

In software engineering, a great number of new approaches are being actively researched, and a lot of tools are being developed based on them. These tools require a framework for their creation and an opportunity to be used by potential developers. Modern IDEs provide both. In this paper, we describe the main capabilities of the IntelliJ Platform that could be useful for researchers that are developing code analysis tools. To illustrate the benefits of using the platform, we describe several use cases that researchers might be interested in: mining software data, running machine learning models on code, recommending refactorings, and visualizing data in the IDE. We provide several examples of existing plugins that implement these cases. Finally, to make it easier to start working with the platform, we develop and provide simple plugins for each use case that could serve as a template for a new project.

Keywords

Cite

@article{arxiv.2110.00141,
  title  = {The IntelliJ Platform: a Framework for Building Plugins and Mining Software Data},
  author = {Zarina Kurbatova and Yaroslav Golubev and Vladimir Kovalenko and Timofey Bryksin},
  journal= {arXiv preprint arXiv:2110.00141},
  year   = {2021}
}

Comments

4 pages, 1 figure

R2 v1 2026-06-24T06:32:32.512Z