Re: Bundling a JVM for a mavenized project

William Winder <[email protected]> Tue, 12 Sep 2017 09:22:04 -0400
Newsgroups gmane.comp.java.netbeans.modules.openide.devel
Message-ID <CAJYutcggajA5_=bbtkm+xOyqBxQpQhm_BpQYMDBeNR9Dv5V9gg@mail.gmail.com>
--94eb2c1ce0d4e365210558fdedac
Content-Type: text/plain; charset="UTF-8"

Thanks Peter, it's reassuring to know that it's possible.

If you give me one more hint, how do I override the "-generate-bundles"
target and <create-bundle> calls? It isn't present in the template.xml
file. Once I get over that hurdle I can customize things according to my
requirements, and I'll likely create a document for the knowledge base that
others can use for hints in the future.

On Mon, Sep 11, 2017 at 12:59 PM, Peter Hansson <[email protected]
> wrote:

> 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.
>

--94eb2c1ce0d4e365210558fdedac
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Thanks Peter, it&#39;s reassuring to know that it&#39;s po=
ssible.<div><br></div><div>If you give me one more hint, how do I override =
the &quot;-generate-bundles&quot; target and &lt;create-bundle&gt; calls? I=
t isn&#39;t present in the template.xml file. Once I get over that hurdle I=
 can customize things according to my requirements, and I&#39;ll likely cre=
ate a document for the knowledge base that others can use for hints in the =
future.</div></div><div class=3D"gmail_extra"><br><div class=3D"gmail_quote=
">On Mon, Sep 11, 2017 at 12:59 PM, Peter Hansson <span dir=3D"ltr">&lt;<a =
href=3D"mailto:[email protected]" target=3D"_blank">peter.hansson=
[email protected]</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I us=
e my own customized version of the recipe from the DZone article<br>
that you reference.<br>
... and I use Maven.<br>
<br>
Yes, this is somewhat complicated. The problem is that even if you are<br>
using Maven it will still be the Ant build scripts from the harness<br>
which will be executed when installers are being build. The<br>
nbm-maven-plugin will ultimately simply call Ant script. So you need a<br>
bit of Ant knowledge.<br>
<br>
What you can do in nbm-maven-plugin is set the name of the=C2=A0 &#39;templ=
ate<br>
file&#39; ( &lt;templateFile&gt;foo/bar/<wbr>template.xml&lt;/templateFile&=
gt;) which is<br>
really just the starting point of those Ant scripts. Anyway, I copy<br>
the Ant scripts and all their associated stuff (what is known as &#39;the<b=
r>
harness&#39;) from an IDE distro into my installer project&#39;s src dir. T=
hen<br>
I have a copy I can customize. Then I let my template file variable in<br>
nbm-maven-plugin point to a template.xml file I have in project&#39;s<br>
&#39;src&#39; dir, rather than something in the IDE&#39;s install directory=
.<br>
<br>
See <a href=3D"http://www.mojohaus.org/nbm-maven-plugin/build-installers-mo=
jo.html#templateFile" rel=3D"noreferrer" target=3D"_blank">http://www.mojoh=
aus.org/nbm-<wbr>maven-plugin/build-installers-<wbr>mojo.html#templateFile<=
/a><br>
<br>
How exactly you choose to customize the harness (or rather your<br>
private copy of that) depends entirely on your specific requirements.<br>
<br>
/Peter<br>
<br>
PS: Bundling of a JRE for the Mac OSX platform hasn&#39;t worked in the<br>
past but has now been fixed (see<br>
<a href=3D"https://netbeans.org/bugzilla/show_bug.cgi?id=3D250103" rel=3D"n=
oreferrer" target=3D"_blank">https://netbeans.org/bugzilla/<wbr>show_bug.cg=
i?id=3D250103</a>), however it is<br>
not in NB 8.2. Will be in next release of if you use a dev release.<br>
<div class=3D"HOEnZb"><div class=3D"h5"><br>
<br>
On Mon, Sep 11, 2017 at 2:24 AM, William Winder &lt;<a href=3D"mailto:wwind=
[email protected]">[email protected]</a>&gt; wrote:<br>
&gt; I&#39;m trying to bundle a JVM for a mavenized netbeans platform proje=
ct.<br>
&gt;<br>
&gt; I&#39;ve found lots of documentation for configuring the ant scripts, =
and<br>
&gt; although there are a lot of steps it doesn&#39;t seem very complicated=
 to<br>
&gt; configure:<br>
&gt; <a href=3D"http://wiki.netbeans.org/NBIBundledJVM" rel=3D"noreferrer" =
target=3D"_blank">http://wiki.netbeans.org/<wbr>NBIBundledJVM</a><br>
&gt; <a href=3D"https://dzone.com/articles/including-jre-in-nbi" rel=3D"nor=
eferrer" target=3D"_blank">https://dzone.com/articles/<wbr>including-jre-in=
-nbi</a><br>
&gt; <a href=3D"https://blogs.oracle.com/geertjan/installing-the-jre-via-an=
-applications-installer-via-windows" rel=3D"noreferrer" target=3D"_blank">h=
ttps://blogs.oracle.com/<wbr>geertjan/installing-the-jre-<wbr>via-an-applic=
ations-installer-<wbr>via-windows</a><br>
&gt; <a href=3D"https://platform.netbeans.org/tutorials/nbm-nbi.html#bundli=
ng-jre" rel=3D"noreferrer" target=3D"_blank">https://platform.netbeans.org/=
<wbr>tutorials/nbm-nbi.html#<wbr>bundling-jre</a><br>
&gt;<br>
&gt; There is also a lot of detail about configuring the NBI using<br>
&gt; nbm-maven-plugin properties here (mainly the ConfigurationLogic.java f=
ile):<br>
&gt; <a href=3D"http://www.mojohaus.org/nbm-maven-plugin/buildinstexample.h=
tml" rel=3D"noreferrer" target=3D"_blank">http://www.mojohaus.org/nbm-<wbr>=
maven-plugin/buildinstexample.<wbr>html</a><br>
&gt;<br>
&gt; But I don&#39;t see any option for configuring the value of<br>
&gt; &quot;nbi.bundled.jvm.file&quot; which seems to be the missing piece. =
There is a<br>
&gt; template.xml file which I&#39;m hoping can somehow bridge the gap betw=
een the<br>
&gt; ant and maven builds, but I&#39;m not clear about how.<br>
&gt;<br>
&gt; Any guidance would be appreciated.<br>
</div></div></blockquote></div><br></div>

--94eb2c1ce0d4e365210558fdedac--