Hi, The go plugin might be a good starting place to see how to achieve this; it uses its own _run() using a custom build environment rather than relying on the defaults.
So in the ant plugin, change calls to self.run() with calls to self._run and define _run with your overloaded environment. Cheers, - Loïc On Tue, Oct 11, 2016 at 11:38 AM, Jian LUO <[email protected]> wrote: > Hi, > > Thanks for the explanation. That's exactly what comes first in my mind. > I've tried to customize the ant / jdk plugin by overriding the env method. > The doc string of BasePlugin.env reads "return a list with the execution > environment for building". However the result env applies both to build > time and to the generated wrapper nonetheless. How can i override runtime > only env in the plugin? > > Jian > > On Oct 11, 2016 09:53, "Didier Roche" <[email protected]> wrote: > > Le 10/10/2016 à 23:49, Jian LUO a écrit : > > Hi, > > I don't think it counts as cross compiling since Java (at least in my > case) is cross platform. Just wanted to compile Java with one JDK and run > with another. > > > Hey, > > I'm adding Sergio to the conversation, but I think the easiest path is to > create a custom plugin, inheriting from the base java one, which is > outputting a wrapper scripts with different JAVA env variables. > That way, you keep the current building behavior (build with java on the > machine), but output a script which will point to an armhf java path for > instance and download the correct version and packages version for all > those. > Cross-compilation-like may be needed as Manik suggested as you will need > to pull some packages which are architectures specific. > > On how to create a custom plugin, here is some documentation: > http://snapcraft.io/docs/build-snaps/plugins and the playpen has some > example: https://github.com/ubuntu/snappy-playpen/blob/master/idea/ > parts/plugins/x-antIntellij.py > I'll let Sergio adding more info as needed :) > > Cheers, > Didier > > > > Jian > > On Oct 10, 2016 20:05, "Manik Taneja" <[email protected]> wrote: > >> >> >> On Mon, Oct 10, 2016 at 6:33 AM, Jian LUO <[email protected]> wrote: >> >>> Hi List, >>> >>> Is there any formal way in snapcraft to set environment variables >>> separately for build time and run time? The use case I'm facing is building >>> a Java snap on amd64 host for armhf target. >>> >> Snapcraft does not support cross-compilation. Consider building natively >> on armhf, or using this as reference- >> >> https://github.com/snapcore/snapd/blob/master/docs/cross-build.md >> >> and let us know if you see any issues. >> >> /Manik >> > > > > > -- > Snapcraft mailing list > [email protected] > Modify settings or unsubscribe at: https://lists.ubuntu.com/mailm > an/listinfo/snapcraft > > > > -- > Snapcraft mailing list > [email protected] > Modify settings or unsubscribe at: https://lists.ubuntu.com/ > mailman/listinfo/snapcraft > > -- - Loïc
-- Snapcraft mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/snapcraft
