Dependencies Configurations

This chapter describes all the dependency configurations added to your project by the MicroEJ Gradle plugins.

Note

The MicroEJ Gradle plugins extend the Gradle Java and Java Library plugins. For more information about the configurations inherited from those plugins, refer to the official documentation :

The following graph describes the dependency configurations. Use this legend to interpret the colors:

  • Green background : Dependencies can be declared against this configuration
  • Gray background : This configuration is for consumption by tasks only
  • Blue background : A task or plugin
digraph mygraph {
    rankdir="BT";
    bgcolor="transparent"
    fontname="Helvetica,Arial,sans-serif"
    node [
        shape = box
        width = 1.5
        color = "#7dc5dc"
        style = filled
        fontname="Helvetica,Arial,sans-serif"
    ]
    edge [fontname="Helvetica,Arial,sans-serif"]
    "microejVee" [fillcolor = "#41f753"]
    "microejApplication" [fillcolor = "#41f753"]
    "microejTool" [fillcolor = "#41f753"]
    "microejRuntimeApi" [fillcolor = "#41f753"]
    "microejApplicationClasspath" [fillcolor = "#b0d6d3"]
    "microejVeeClasspath" [fillcolor = "#b0d6d3"]
    "microejKernelExecutableClasspath" [fillcolor = "#b0d6d3"]
    "virtualDeviceToolClasspath" [fillcolor = "#b0d6d3"]
    "microejRuntimeApiClasspath" [fillcolor = "#b0d6d3"]
    "microejRuntimeApiKernelClasspath" [fillcolor = "#b0d6d3"]

    "loadVee" -> "microejVeeClasspath" [ label="uses" ]
    "microejVeeClasspath" -> "microejVee"
    "loadKernelExecutable" -> "microejKernelExecutableClasspath" [ label="uses" ]
    "microejKernelExecutableClasspath" -> "microejVee"
    "buildVirtualDevice" -> "microejApplicationClasspath" [ label="uses" ]
    "buildVirtualDevice" -> "virtualDeviceToolClasspath" [ label="uses" ]
    "microejApplicationClasspath" -> "microejApplication"
    "virtualDeviceToolClasspath" -> "microejTool"
    "microejRuntimeApiClasspath" -> "microejRuntimeApi"
    "microejRuntimeApiKernelClasspath" -> "microejRuntimeApi"
    "com.microej.gradle.application" -> "microejRuntimeApiClasspath" [ label="uses" ]
    "buildWPK" -> "microejRuntimeApiKernelClasspath" [ label="uses" ]
    "buildApplicationObjectFile" -> "microejRuntimeApiKernelClasspath" [ label="uses" ]
    "buildFeature" -> "microejRuntimeApiKernelClasspath" [ label="uses" ]
}

The MicroEJ Gradle plugins also define dependency configurations for internal use:

  • antScriptLauncherClasspath, used by the buildVirtualDevice task
  • addonProcessorClasspath , used by the adp task
  • jdtCompilerClasspath, used by the Add-On Library and Application plugins
  • wrapperClasspath, used by the compileJava task

Publication Variants

The Application plugin defines a list of variants that are used during the publication of an Application.

microejWPK

This variant is used to publish the WPK of an Application, that can be fetched by declaring a dependency with the microejApplication configuration. The LibraryElement attribute of the variant is set to microej-wpk.

microejExecutable

This variant is used to publish the Executable of an Application, that can be fetched by declaring a dependency with the microejVee configuration. The LibraryElement attribute of the variant is set to microej-executable.

microejExecutableBuildFiles

This variant is used to publish the files generated when building the Executable of an Application. The LibraryElement attribute of the variant is set to microej-build-files.

microejVirtualDevice

This variant is used to publish the Virtual Device of an Application, that can be fetched by declaring a dependency with the microejVee configuration. The LibraryElement attribute of the variant is set to microej-vee-port.