# JavaBasePlugin

abstract class JavaBasePlugin : Plugin<Project> (source)

A org.gradle.api.Plugin which compiles and tests Java source, and assembles it into a JAR file.

This plugin is automatically applied to most projects that build any JVM language source. It creates a JavaPluginExtension extension named `java` that is used to configure all jvm-related components in the project. It is responsible for configuring the conventions of any SourceSets that are present and used by (for example) the Java, Groovy, or Kotlin plugins.

#### Since

0.9

#### See also

Java plugin reference

## Constructors

JavaBasePlugin
Link copied to clipboard
@Inject
constructor(jvmPluginServices: JvmPluginServices, propertyFactory: PropertyFactory)

## Properties

BUILD_DEPENDENTS_TASK_NAME
Link copied to clipboard
val BUILD_DEPENDENTS_TASK_NAME: String = "buildDependents"
The build dependents task name.
BUILD_NEEDED_TASK_NAME
Link copied to clipboard
val BUILD_NEEDED_TASK_NAME: String = "buildNeeded"
The build needed task name.
BUILD_TASK_NAME
Link copied to clipboard
val BUILD_TASK_NAME: String = "build"
The build task name.
CHECK_TASK_NAME
Link copied to clipboard
val CHECK_TASK_NAME: String = "check"
The check task name.
COMPILE_CLASSPATH_PACKAGING_SYSTEM_PROPERTY
Link copied to clipboard
val COMPILE_CLASSPATH_PACKAGING_SYSTEM_PROPERTY: String = "org.gradle.java.compile-classpath-packaging"
Set this property to use JARs build from subprojects, instead of the classes folder from these project, on the compile classpath.
DOCUMENTATION_GROUP
Link copied to clipboard
val DOCUMENTATION_GROUP: String = "documentation"
Task group name for documentation-related tasks.
UNPUBLISHABLE_VARIANT_ARTIFACTS
Link copied to clipboard
val UNPUBLISHABLE_VARIANT_ARTIFACTS: Set<String>
A list of known artifact types which are known to prevent from publication.
VERIFICATION_GROUP
Link copied to clipboard
val VERIFICATION_GROUP: String = "verification"
The verification group.

## Functions

apply
Link copied to clipboard
open fun apply(project: Project)
Apply this plugin to the given target object.