Re: Bundling a JVM for a mavenized project

Peter Hansson <[email protected]> Mon, 11 Sep 2017 18:59:39 +0200
Newsgroups gmane.comp.java.netbeans.modules.openide.devel
Message-ID <CAC55jYMVbbwM89ubKYbtMAmwEG-WeE-m-aUuCmyLqY16_2K0xw@mail.gmail.com>
I use my own customized version of the recipe from the DZone article
that you reference.
... and I use Maven.

Yes, this is somewhat complicated. The problem is that even if you are
using Maven it will still be the Ant build scripts from the harness
which will be executed when installers are being build. The
nbm-maven-plugin will ultimately simply call Ant script. So you need a
bit of Ant knowledge.

What you can do in nbm-maven-plugin is set the name of the  'template
file' ( <templateFile>foo/bar/template.xml</templateFile>) which is
really just the starting point of those Ant scripts. Anyway, I copy
the Ant scripts and all their associated stuff (what is known as 'the
harness') from an IDE distro into my installer project's src dir. Then
I have a copy I can customize. Then I let my template file variable in
nbm-maven-plugin point to a template.xml file I have in project's
'src' dir, rather than something in the IDE's install directory.

See http://www.mojohaus.org/nbm-maven-plugin/build-installers-mojo.html#templateFile

How exactly you choose to customize the harness (or rather your
private copy of that) depends entirely on your specific requirements.

/Peter

PS: Bundling of a JRE for the Mac OSX platform hasn't worked in the
past but has now been fixed (see
https://netbeans.org/bugzilla/show_bug.cgi?id=250103), however it is
not in NB 8.2. Will be in next release of if you use a dev release.


On Mon, Sep 11, 2017 at 2:24 AM, William Winder <[email protected]> wrote:
> I'm trying to bundle a JVM for a mavenized netbeans platform project.
>
> I've found lots of documentation for configuring the ant scripts, and
> although there are a lot of steps it doesn't seem very complicated to
> configure:
> http://wiki.netbeans.org/NBIBundledJVM
> https://dzone.com/articles/including-jre-in-nbi
> https://blogs.oracle.com/geertjan/installing-the-jre-via-an-applications-installer-via-windows
> https://platform.netbeans.org/tutorials/nbm-nbi.html#bundling-jre
>
> There is also a lot of detail about configuring the NBI using
> nbm-maven-plugin properties here (mainly the ConfigurationLogic.java file):
> http://www.mojohaus.org/nbm-maven-plugin/buildinstexample.html
>
> But I don't see any option for configuring the value of
> "nbi.bundled.jvm.file" which seems to be the missing piece. There is a
> template.xml file which I'm hoping can somehow bridge the gap between the
> ant and maven builds, but I'm not clear about how.
>
> Any guidance would be appreciated.