# Gradle Plugin Reference

This page contains links and short descriptions for all the core plugins provided by Gradle itself.

## JVM languages and frameworks

Java

  Provides support for building any type of Java project.

Java Library

  Provides support for building a Java library.

Java Platform

  Provides support for building a Java platform.

Groovy

  Provides support for building any type of Groovy project.

Scala

  Provides support for building any type of Scala project.

Play

  Provides support for building, testing and running Play applications.

ANTLR

  Provides support for generating parsers using ANTLR.

## Native languages

C++

  Provides support for building C++ libraries and applications on Windows, Linux, and macOS.

## Packaging and distribution

Application

  Provides support for building JVM-based, runnable applications.

WAR

  Provides support for building and packaging WAR-based Java web applications.

EAR

  Provides support for building and packaging Java EE applications.

OSGi

  Provides support for creating OSGi packages.

Maven Publish

  Provides support for publishing artifacts to Maven-compatible repositories.

Ivy Publish

  Provides support for publishing artifacts to Ivy-compatible repositories.

Legacy Maven Plugin

  Provides support for publishing artifacts using the legacy mechanism to Maven-compatible repositories.

Distribution

  Makes it easy to create ZIP and tarball distributions of your project.

Java Library Distribution

  Provides support for creating a ZIP distribution of a Java library project that includes its runtime dependencies.

## Code analysis

Checkstyle

  Performs quality checks on your project’s Java source files using Checkstyle and generates associated reports.

FindBugs

  Performs quality checks on your project’s Java source files using FindBugs and generates associated reports.

PMD

  Performs quality checks on your project’s Java source files using PMD and generates associated reports.

JDepend

  Performs quality checks on your project’s Java source files using JDepend and generates associated reports.

JaCoCo

  Provides code coverage metrics for your Java project using JaCoCo.

CodeNarc

  Performs quality checks on your Groovy source files using CodeNarc and generates associated reports.

## IDE integration

Eclipse

  Generates Eclipse project files for the build that can be opened by the IDE. This set of plugins can also be used to fine tune Buildship’s import process for Gradle builds.

IntelliJ IDEA

  Generates IDEA project files for the build that can be opened by the IDE. It can also be used to fine tune IDEA’s import process for Gradle builds.

## Utility

Base

  Provides common lifecycle tasks, such as `clean`, and other features common to most builds.

Build Init

  Generates a new Gradle build of a specified type, such as a Java library. It can also generate a build script from a Maven POM — see Migrating from Maven to Gradle for more details.

Signing

  Provides support for digitally signing generated files and artifacts.

Plugin Development

  Makes it easier to develop and publish a Gradle plugin.