Custom IntelliJ IDEA build versioning


we have forked IntelliJ IDEA community edition (15) to make it a bit easier for our users to get up and running, see and

Our build process is essentially a duplicate of the Gant files in build/ (see build-robovm/). Everything works pretty great, but i'm not in the process of getting proper versioning going.

It appears that versioning is spread across multiple sites in IntelliJ IDEA. I managed to modify various files like ApplicationInfo.xml, build.txt etc. to have a somewhat working versioning scheme. It's all very hackish though, and some things don't work (e.g. build.txt must follow a specific syntax, otherwise the platform fails with a parsing error on startup).

Since other JetBrains products are based on this app platform, i'm sure there's a streamlined process to modifying the versioning scheme. I'd be super greatful if you could offer some insight into how this works!


1 comment
Comment actions Permalink

Actually ApplicationInfo.xml and build.txt are exactly the two places where the build number needs to be updated. See patchAppDescriptor() in build/scripts/layouts.gant for the code that updates ApplicationInfo.xml. build.txt is generated in the layoutAll() function in dist.gant.

(In RoboVM Studio, you should have the same build number as the IntelliJ IDEA build that you're based on, and you should have your own product code - "RB" or something, instead of "IC" for Community Ediiton. This will ensure correct operation of third-party plugins.)


Please sign in to leave a comment.