Goals

The client plugin introduces the following goals:

  • client:compile

  • client:link

  • client:build

  • client:package

  • client:install

  • client:run

client:compile

This goal performs AOT compilation by executing the native-image command and builds the shared object file. It is a very intensive and lengthy task (several minutes, depending on your project and CPU), so it should be called only when the project is ready and runs fine on a VM.

The results will be available at target/client/$arch-$os/gvm.

Links the object file to create a native executable file or shared library.

The results will be available at target/client/$arch-$os/$AppName.

client:build

This goal simply combines client:compile and client:link.

client:package

Packages the executable or shared library into a target specific package that includes all the necessary dependencies.

The list of platform specific packages are as follows:

  • Linux - deb, rpm

  • macOS - app, pkg, deb

  • Windows - exe, msi

  • iOS - app, ipa

  • Android - apk

Note

At the moment, this goal is only supported for iOS and Android.

client:install

Installs the package on the host system or attached device.

Note

At the moment, this goal is only intended for Android.

client:run

Runs either the executable generated by client:link on the host system or runs the application that was installed on the device (iOS or Android).