Interface JavaForkOptions

All Superinterfaces:
ProcessForkOptions
All Known Subinterfaces:
JavaExecSpec
All Known Implementing Classes:
JavaExec, Test

public interface JavaForkOptions extends ProcessForkOptions

Specifies the options to use to fork a Java process.

  • Method Details

    • getSystemProperties

      @Input MapProperty<String,Object> getSystemProperties()
      System properties which will be used for the process.
      Returns:
      The system properties. Returns an empty map when there are no system properties.
    • systemProperties

      JavaForkOptions systemProperties(Map<String,? extends @Nullable Object> properties)
      Adds some system properties to use for the process.
      Parameters:
      properties - The system properties. Must not be null.
      Returns:
      this
    • systemProperty

      JavaForkOptions systemProperty(String name, @Nullable Object value)
      Adds a system property to use for the process.
      Parameters:
      name - The name of the property
      value - The value for the property. May be null.
      Returns:
      this
    • getDefaultCharacterEncoding

      @Optional @Input Property<String> getDefaultCharacterEncoding()
      Returns the default character encoding to use.
      Returns:
      The default character encoding. Returns null if the default character encoding of this JVM should be used.
    • getMinHeapSize

      @Optional @Input Property<String> getMinHeapSize()
      Returns the minimum heap size for the process, if any. Supports the units megabytes (e.g. "512m") and gigabytes (e.g. "1g").
      Returns:
      The minimum heap size. Returns null if the default minimum heap size should be used.
    • getMaxHeapSize

      @Optional @Input Property<String> getMaxHeapSize()
      Returns the maximum heap size for the process, if any. Supports the units megabytes (e.g. "512m") and gigabytes (e.g. "1g").
      Returns:
      The maximum heap size. Returns null if the default maximum heap size should be used.
    • getJvmArgs

      The extra arguments to use to launch the JVM for the process.
      Returns:
      The list of arguments. Returns an empty list if there are no arguments.
    • jvmArgs

      JavaForkOptions jvmArgs(Iterable<?> arguments)
      Adds some arguments to use to launch the JVM for the process.
      Parameters:
      arguments - The arguments. Must not be null.
      Returns:
      this
    • jvmArgs

      JavaForkOptions jvmArgs(Object... arguments)
      Adds some arguments to use to launch the JVM for the process.
      Parameters:
      arguments - The arguments.
      Returns:
      this
    • getJvmArgumentProviders

      ListProperty<CommandLineArgumentProvider> getJvmArgumentProviders()
      Command line argument providers for the java process to fork.
      Since:
      4.6
    • getBootstrapClasspath

      @Classpath ConfigurableFileCollection getBootstrapClasspath()
      Returns the bootstrap classpath to use for the process. The default bootstrap classpath for the JVM is used when this classpath is empty.
      Returns:
      The bootstrap classpath. Never returns null.
    • bootstrapClasspath

      JavaForkOptions bootstrapClasspath(@Nullable Object... classpath)
      Adds the given values to the end of the bootstrap classpath for the process.
      Parameters:
      classpath - The classpath.
      Returns:
      this
    • getEnableAssertions

      @Input @Optional Property<Boolean> getEnableAssertions()
      A flag that marks if assertions are enabled for the process.
    • getDebug

      @Input Property<Boolean> getDebug()
      Determines whether debugging is enabled for the test process. When enabled — debug = true — the process is started in a suspended state, listening on port 5005. You should disable parallel test execution when debugging and you will need to reattach the debugger occasionally if you use a non-zero value for Test.getForkEvery().

      Since Gradle 5.6, you can configure the port and other Java debug properties via debugOptions(Action).

    • getDebugOptions

      JavaDebugOptions getDebugOptions()
      Returns the Java Debug Wire Protocol properties for the process. If enabled then the -agentlib:jdwp=... will be appended to the JVM arguments with the configuration from the parameter.
      Since:
      5.6
    • debugOptions

      void debugOptions(Action<JavaDebugOptions> action)
      Configures Java Debug Wire Protocol properties for the process. If getDebug() (boolean)} is enabled then the -agentlib:jdwp=... will be appended to the JVM arguments with the configuration from the parameter.
      Parameters:
      action - the Java debug configuration
      Since:
      5.6
    • getAllJvmArgs

      @Internal Provider<List<String>> getAllJvmArgs()
      Returns the full set of arguments to use to launch the JVM for the process. This includes arguments to define system properties, the minimum/maximum heap size, and the bootstrap classpath.
      Returns:
      The immutable list of arguments. Returns an empty list if there are no arguments.
    • copyTo

      Copies these options to the given options.
      Parameters:
      options - The target options.
      Returns:
      this