Building IntelliJ Community Edition: minimum to full
I've been using Eclipse for everything for nearly a decade, and been evaluating the possibility of changing to IntelliJ (-Community) as my primary IDE lately. After a git clone from the official GitHub repository, I successfully built a 15 EAP version of IC with just a single ant command. Very nice.
Now I want to learn more about the source code, and tailor the project to better meet my specific needs by configuring/altering the build process. I see this page on the overall directory structure, but couldn't find anything more. Is there any documentation in these aspects that I better read before diving into the build scripts?
What I realy want to do is to build a minimalist IntelliJ Platform first, and then gradually include built-in plugins (there are a whole list of plugins included in the source repository, right?), and finally write some of my own plugins for it. I think this would be the way to truely understand the project archetecture. Anyone went down this path?
By the way, is IntelliJ like "plugin LEGO" as Eclipse is? Or is it different in this respect? Where is IntelliJ between modular and monolithic?
Thanks!
Please sign in to leave a comment.
We don't have documentation for our build scripts. If you want to remove plugins from IntelliJ CE layout you can comment 'layoutCommunityPlugins' call
in build/sripts/layouts.gant and rebuild the IDE, though I don't see how it may help to understand the project architecture.
We have some modularity in IntelliJ IDEA, e.g. the platform doesn't depend on the plugins and plugins don't depends on each other unless it's
necessary. However the IntelliJ Platform itself isn't quite modular, its source code is divided into modules, but there are many unreasonable
dependencies between these modules.
It may be better to ask questions related to plugin development at the designated forum:
https://devnet.jetbrains.com/community/idea/open_api_and_plugin_development.
--
Nikolay Chashnikov
JetBrains
http://www.jetbrains.com
"Develop with pleasure!"
Thank you!
I'll start from there.