CINXE.COM
Gradle DSL Version 8.11.1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Gradle DSL Version 8.11.1</title><link xmlns:xslthl="http://xslthl.sf.net" rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato:400,400i,700"><link xmlns:xslthl="http://xslthl.sf.net" crossorigin="crossorigin" href="//assets.gradle.com" rel="preconnect"><meta xmlns:xslthl="http://xslthl.sf.net" content="width=device-width, initial-scale=1" name="viewport"><link xmlns:xslthl="http://xslthl.sf.net" type="text/css" rel="stylesheet" href="base.css"><meta content="DocBook XSL Stylesheets V1.75.2" name="generator"><link rel="home" href="index.html" title="Gradle DSL Version 8.11.1"><!-- Prefetch header and footer if on Gradle 4.4 and lower only --> <!-- Load build-tool.css if on Gradle<=4.4 or release notes --> <!-- Load build-tool.css if on Gradle<8.0 and javadoc --> <!-- Load build-tool-modern.css if on Gradle>=8.0 and javadoc --> <!-- Load decorate.css if on Gradle<=4.3 for user manual, Gradle<=4.4 for DSL Reference, or Gradle<=4.5 for Javadoc --> <style type="text/css"> cloudflare-app[app="cookiless"] cookiless-div { font-family: "Lato","Helvetica Neue",Arial,sans-serif; font-weight: 300; background-color: #02303A !important; opacity: 1 !important; } cloudflare-app[app="cookiless"] cookiless-div .iAccept { font-weight: 400; } @media (max-width: 1023px) { .notification { display: none; } } @media (min-width: 1024px) { cloudflare-app[app="cookiless"] { position: fixed !important; width: 400px !important; left: auto !important; right: 0 !important; bottom: 0 !important; } /* Overrides for banner */ .notification { height: 44px; line-height: 44px; vertical-align: middle; background-color: #02303A; text-align: center; color: white; z-index: 1; } .notification a { color: white; text-decoration: underline; } .notification ~ .main-content #header #toc, .notification ~ .main-content .toc { top: 98px; } } </style> <!-- Load common JS for all Gradle versions --> <script src="/build-tool.js" type="text/javascript" defer></script> <!-- Google Tag Manager --> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-WRTQKGT'); </script> <!-- End Google Tag Manager --> <!-- Inject new header and footer for Gradle<=4.4 or release notes--> <script type="text/javascript" defer> window.siteDecorateVersion = "8.11.1"; </script> <!-- Load DocSearch assets if on current manual, dsl, or samples --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@algolia/autocomplete-theme-classic"> <script src="https://cdn.jsdelivr.net/npm/algoliasearch@4.23.3/dist/algoliasearch-lite.umd.js"></script> <script src="https://cdn.jsdelivr.net/npm/instantsearch.js@4.69.0/dist/instantsearch.production.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/@algolia/autocomplete-js"></script> <script src="/build-tool-search.js" type="text/javascript" defer></script> <link rel="stylesheet" href="/build-tool-search.css"> <!--Load ratings css and js if on current user manual --> <!--Load banner css, html and js if on current user manual --> <!-- Canonical Link and Structured Data for SEO --> <link rel="canonical" href="https://docs.gradle.org/current/dsl/index.html" /> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "name": "Gradle Documentation", "url": "https://docs.gradle.org/current/dsl/index.html" } </script> <meta name="google-site-verification" content="kCnBfMu0lbnMpfg3t1-ZgJHbSOSYRSquWsxQ4HgqLkA" /></head><body><!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-WRTQKGT" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --><div class="layout"><header xmlns:xslthl="http://xslthl.sf.net" itemtype="https://schema.org/WPHeader" itemscope="itemscope" class="site-layout__header site-header"><nav itemtype="https://schema.org/SiteNavigationElement" itemscope="itemscope" class="site-header__navigation"><div class="site-header__navigation-header"><a title="Gradle Docs" href="https://docs.gradle.org" class="logo" target="_top"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 278 86" height="43px" width="139px"><title>Gradle</title><path d="M155,56.32V70.27a18.32,18.32,0,0,1-5.59,2.83,21.82,21.82,0,0,1-6.36.89,21.08,21.08,0,0,1-7.64-1.31A17.12,17.12,0,0,1,129.59,69a16.14,16.14,0,0,1-3.73-5.58,18.78,18.78,0,0,1-1.31-7.08,19.58,19.58,0,0,1,1.26-7.14A15.68,15.68,0,0,1,135,40a20.39,20.39,0,0,1,7.45-1.29,22,22,0,0,1,3.92.33,20.43,20.43,0,0,1,3.39.92,15.16,15.16,0,0,1,2.85,1.42A17.3,17.3,0,0,1,155,43.25l-1.84,2.91a1.72,1.72,0,0,1-1.12.84,2,2,0,0,1-1.5-.34L149,45.75a10.49,10.49,0,0,0-1.75-.79,14.33,14.33,0,0,0-2.17-.54,15.29,15.29,0,0,0-2.78-.22,11.91,11.91,0,0,0-4.61.86,9.66,9.66,0,0,0-3.52,2.46,10.9,10.9,0,0,0-2.24,3.84,14.88,14.88,0,0,0-.79,5,15.23,15.23,0,0,0,.85,5.28,11.06,11.06,0,0,0,2.38,3.94A10.15,10.15,0,0,0,138.05,68a14.28,14.28,0,0,0,8.25.44,17.1,17.1,0,0,0,2.94-1.09V61.14h-4.35a1.3,1.3,0,0,1-1-.35,1.15,1.15,0,0,1-.35-.85V56.32Zm10.47-2.93a10.53,10.53,0,0,1,2.72-3.45,5.77,5.77,0,0,1,3.72-1.25,4.5,4.5,0,0,1,2.72.74l-.38,4.41a1.18,1.18,0,0,1-.34.61,1,1,0,0,1-.61.18,6.76,6.76,0,0,1-1.06-.12,8.22,8.22,0,0,0-1.38-.12,5,5,0,0,0-1.74.28,4.37,4.37,0,0,0-1.37.83,5.55,5.55,0,0,0-1.07,1.3,12.26,12.26,0,0,0-.87,1.74V73.61H160V49.14h3.45a1.94,1.94,0,0,1,1.27.32,1.9,1.9,0,0,1,.48,1.16Zm11.36-.84A14.49,14.49,0,0,1,187,48.69a9.92,9.92,0,0,1,3.84.7,8.06,8.06,0,0,1,2.86,2,8.38,8.38,0,0,1,1.78,3,11.64,11.64,0,0,1,.61,3.82V73.61h-2.68a2.64,2.64,0,0,1-1.28-.25,1.72,1.72,0,0,1-.72-1l-.52-1.77a20.25,20.25,0,0,1-1.82,1.47,10.86,10.86,0,0,1-1.83,1.06,10.36,10.36,0,0,1-2,.66,12,12,0,0,1-2.4.22,9.64,9.64,0,0,1-2.86-.41,6.28,6.28,0,0,1-2.27-1.26,5.6,5.6,0,0,1-1.48-2.07,7.38,7.38,0,0,1-.52-2.89,5.7,5.7,0,0,1,.31-1.85,5.3,5.3,0,0,1,1-1.75,8.25,8.25,0,0,1,1.83-1.57,11.17,11.17,0,0,1,2.75-1.29,23.28,23.28,0,0,1,3.81-.9,36.77,36.77,0,0,1,5-.41V58.16a5.35,5.35,0,0,0-1.05-3.64,3.83,3.83,0,0,0-3-1.18,7.3,7.3,0,0,0-2.38.33,9.39,9.39,0,0,0-1.65.75l-1.3.75a2.52,2.52,0,0,1-1.3.34,1.7,1.7,0,0,1-1.05-.32,2.61,2.61,0,0,1-.69-.76Zm13.5,10.61a31.66,31.66,0,0,0-4.3.45,11,11,0,0,0-2.79.82,3.57,3.57,0,0,0-1.5,1.17,2.89,2.89,0,0,0,.47,3.67,3.93,3.93,0,0,0,2.39.67,7,7,0,0,0,3.14-.66,9.52,9.52,0,0,0,2.59-2Zm32.53-25V73.61h-3.6a1.39,1.39,0,0,1-1.48-1.07l-.5-2.36a12.4,12.4,0,0,1-3.4,2.74,9.17,9.17,0,0,1-4.47,1,7.95,7.95,0,0,1-6.55-3.26A11.61,11.61,0,0,1,201,66.79a19.71,19.71,0,0,1-.66-5.34,16.77,16.77,0,0,1,.74-5.06,12.21,12.21,0,0,1,2.13-4,9.88,9.88,0,0,1,3.31-2.69,9.64,9.64,0,0,1,4.34-1,8.63,8.63,0,0,1,3.51.64,9,9,0,0,1,2.6,1.74V38.17ZM217,55.39a5.94,5.94,0,0,0-2.18-1.72,6.54,6.54,0,0,0-2.54-.5,5.68,5.68,0,0,0-2.41.5A4.87,4.87,0,0,0,208,55.19a7.19,7.19,0,0,0-1.17,2.57,14.83,14.83,0,0,0-.4,3.69,16.34,16.34,0,0,0,.34,3.63,7.14,7.14,0,0,0,1,2.44,3.79,3.79,0,0,0,1.58,1.36,5,5,0,0,0,2.07.41,6,6,0,0,0,3.13-.76A9.19,9.19,0,0,0,217,66.36Zm17.67-17.22V73.61h-5.89V38.17ZM245.1,62.11a11.37,11.37,0,0,0,.67,3.26,6.54,6.54,0,0,0,1.38,2.27,5.39,5.39,0,0,0,2,1.33,7.26,7.26,0,0,0,2.61.44,8.21,8.21,0,0,0,2.47-.33,11.51,11.51,0,0,0,1.81-.74c.52-.27,1-.52,1.36-.74a2.31,2.31,0,0,1,1.13-.33,1.21,1.21,0,0,1,1.1.55L261.36,70a9.45,9.45,0,0,1-2.19,1.92,12.18,12.18,0,0,1-2.54,1.24,14,14,0,0,1-2.7.66,18.78,18.78,0,0,1-2.65.19,12.93,12.93,0,0,1-4.75-.85,10.65,10.65,0,0,1-3.82-2.5,11.8,11.8,0,0,1-2.55-4.1,15.9,15.9,0,0,1-.93-5.67,13.55,13.55,0,0,1,.81-4.71,11.34,11.34,0,0,1,2.33-3.84,11,11,0,0,1,3.69-2.59,12.31,12.31,0,0,1,4.93-1,11.86,11.86,0,0,1,4.27.74,9.25,9.25,0,0,1,3.36,2.16,9.84,9.84,0,0,1,2.21,3.48,13,13,0,0,1,.8,4.71,3.82,3.82,0,0,1-.29,1.8,1.19,1.19,0,0,1-1.1.46Zm11.23-3.55A7.28,7.28,0,0,0,256,56.4a5.16,5.16,0,0,0-1-1.77,4.44,4.44,0,0,0-1.63-1.21,5.68,5.68,0,0,0-2.3-.44,5.46,5.46,0,0,0-4,1.45,7.13,7.13,0,0,0-1.87,4.13ZM112.26,14a13.72,13.72,0,0,0-19.08-.32,1.27,1.27,0,0,0-.41.93,1.31,1.31,0,0,0,.38.95l1.73,1.73a1.31,1.31,0,0,0,1.71.12,7.78,7.78,0,0,1,4.71-1.57,7.87,7.87,0,0,1,5.57,13.43C96,40.2,81.41,9.66,48.4,25.37a4.48,4.48,0,0,0-2,6.29l5.66,9.79a4.49,4.49,0,0,0,6.07,1.67l.14-.08-.11.08,2.51-1.41a57.72,57.72,0,0,0,7.91-5.89,1.37,1.37,0,0,1,1.8-.06h0a1.29,1.29,0,0,1,0,2A59.79,59.79,0,0,1,62.11,44l-.09.05-2.51,1.4a7,7,0,0,1-3.47.91,7.19,7.19,0,0,1-6.23-3.57l-5.36-9.24C34.17,40.81,27.93,54.8,31.28,72.5a1.31,1.31,0,0,0,1.29,1.06h6.09A1.3,1.3,0,0,0,40,72.42a8.94,8.94,0,0,1,17.73,0A1.3,1.3,0,0,0,59,73.56h5.94a1.31,1.31,0,0,0,1.3-1.14,8.93,8.93,0,0,1,17.72,0,1.3,1.3,0,0,0,1.29,1.14h5.87a1.3,1.3,0,0,0,1.3-1.28c.14-8.28,2.37-17.79,8.74-22.55C123.15,33.25,117.36,19.12,112.26,14ZM89.79,38.92l-4.2-2.11h0a2.64,2.64,0,1,1,4.2,2.12Z" class="cls-1"/></svg></a><div class="site-header__doc-type sr-only">DSL Reference</div><div class="site-header-version">8.11.1</div><button class="site-header__navigation-button hamburger" aria-label="Navigation Menu" type="button"><span class="hamburger__bar"></span><span class="hamburger__bar"></span><span class="hamburger__bar"></span></button></div><div class="site-header__navigation-collapsible site-header__navigation-collapsible--collapse"><ul class="site-header__navigation-items"><li tabindex="0" class="site-header__navigation-item site-header__navigation-submenu-section"><span class="site-header__navigation-link"> Community </span><div class="site-header__navigation-submenu"><div itemprop="name" class="site-header__navigation-submenu-item"><a itemprop="url" href="https://gradle.org/" class="site-header__navigation-submenu-item-link" target="_top"><span class="site-header__navigation-submenu-item-link-text">Community Home</span></a></div><div itemprop="name" class="site-header__navigation-submenu-item"><a itemprop="url" href="https://discuss.gradle.org/" class="site-header__navigation-submenu-item-link" target="_top"><span class="site-header__navigation-submenu-item-link-text">Community Forums</span></a></div><div itemprop="name" class="site-header__navigation-submenu-item"><a itemprop="url" href="https://plugins.gradle.org" class="site-header__navigation-submenu-item-link" target="_top"><span class="site-header__navigation-submenu-item-link-text">Community Plugins</span></a></div></div></li><li itemprop="name" class="site-header__navigation-item"><a itemprop="url" href="https://gradle.org/training/" class="site-header__navigation-link" target="_top">Training</a></li><li tabindex="0" class="site-header__navigation-item site-header__navigation-submenu-section"><span class="site-header__navigation-link"> News </span><div class="site-header__navigation-submenu"><div itemprop="name" class="site-header__navigation-submenu-item"><a itemprop="url" href="https://newsletter.gradle.org" class="site-header__navigation-submenu-item-link"><span class="site-header__navigation-submenu-item-link-text">Newsletter</span></a></div><div itemprop="name" class="site-header__navigation-submenu-item"><a itemprop="url" href="https://blog.gradle.org" class="site-header__navigation-submenu-item-link"><span class="site-header__navigation-submenu-item-link-text">Blog</span></a></div><div class="site-header__navigation-submenu-item"><a href="https://twitter.com/gradle" class="site-header__navigation-submenu-item-link"><span class="site-header__navigation-submenu-item-link-text">Twitter</span></a></div></div></li><li itemprop="name" class="site-header__navigation-item"><a itemprop="url" href="https://gradle.com/develocity" class="site-header__navigation-link" target="_top">Develocity</a></li><li class="site-header__navigation-item"><a href="https://github.com/gradle/gradle" title="Gradle on GitHub" class="site-header__navigation-link"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20"><title>github</title><path fill-rule="evenodd" fill="#02303A" d="M10 0C4.477 0 0 4.477 0 10c0 4.418 2.865 8.166 6.839 9.489.5.092.682-.217.682-.482 0-.237-.008-.866-.013-1.7-2.782.603-3.369-1.342-3.369-1.342-.454-1.155-1.11-1.462-1.11-1.462-.908-.62.069-.608.069-.608 1.003.07 1.531 1.03 1.531 1.03.892 1.529 2.341 1.087 2.91.831.092-.646.35-1.086.636-1.336-2.22-.253-4.555-1.11-4.555-4.943 0-1.091.39-1.984 1.029-2.683-.103-.253-.446-1.27.098-2.647 0 0 .84-.268 2.75 1.026A9.578 9.578 0 0 1 10 4.836c.85.004 1.705.114 2.504.337 1.909-1.294 2.747-1.026 2.747-1.026.546 1.377.203 2.394.1 2.647.64.699 1.028 1.592 1.028 2.683 0 3.842-2.339 4.687-4.566 4.935.359.309.678.919.678 1.852 0 1.336-.012 2.415-.012 2.743 0 .267.18.579.688.481C17.137 18.163 20 14.418 20 10c0-5.523-4.478-10-10-10"/></svg></a></li></ul></div></nav></header><main class="main-content"><nav class="docs-navigation"><div class="search-container"><input placeholder="Search Docs" class="search-input" id="search-input" name="q" type="search"></div><ul><li><a class="reference-links" href="../userguide/userguide.html">User Manual Home</a></li><li><a class="active reference-links" href="index.html">DSL Reference Home</a></li><li><a class="reference-links" href="../release-notes.html">Release Notes</a></li><ul class="sections"><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N1000C" title="Introduction">Introduction</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10011" title="Some basics">Some basics</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10060" title="Build script structure">Build script structure</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N100CA" title="Core types">Core types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N1022D" title="Publishing types">Publishing types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10374" title="Container types">Container types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N103D9" title="Authentication types">Authentication types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10456" title="Build Cache types">Build Cache types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10484" title="Input Normalization types">Input Normalization types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N104AE" title="Help Task types">Help Task types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10526" title="Task types">Task types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N106B6" title="Test types">Test types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10743" title="Reporting types">Reporting types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N107A8" title="Eclipse/IDEA model types">Eclipse/IDEA model types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10831" title="Eclipse/IDEA task types">Eclipse/IDEA task types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N1088E" title="Xcode task types">Xcode task types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N108CD" title="Visual Studio task types">Visual Studio task types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10900" title="Artifact transform types">Artifact transform types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N1092A" title="Native tool chains model types">Native tool chains model types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10969" title="Native software model types">Native software model types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10AC9" title="C++ component model types">C++ component model types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10AF3" title="Swift component model types">Swift component model types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10B1D" title="Native binary task types">Native binary task types</a></li><li><a xmlns:xslthl="http://xslthl.sf.net" href="index.html#N10B86" title="Native binary task types">Native binary task types</a></li></ul><li><h3>Build script blocks</h3></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:allprojects(groovy.lang.Closure)"><code class="literal">allprojects { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:artifacts(groovy.lang.Closure)"><code class="literal">artifacts { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:buildscript(groovy.lang.Closure)"><code class="literal">buildscript { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:configurations(groovy.lang.Closure)"><code class="literal">configurations { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:dependencies(groovy.lang.Closure)"><code class="literal">dependencies { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:repositories(groovy.lang.Closure)"><code class="literal">repositories { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:sourceSets(groovy.lang.Closure)"><code class="literal">sourceSets { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:subprojects(groovy.lang.Closure)"><code class="literal">subprojects { }</code></a></li><li><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:publishing(groovy.lang.Closure)"><code class="literal">publishing { }</code></a></li><li><h3>Core types</h3></li><li><a class="link" href="org.gradle.api.Project.html"><code class="literal">Project</code></a></li><li><a class="link" href="org.gradle.api.Task.html"><code class="literal">Task</code></a></li><li><a class="link" href="org.gradle.api.invocation.Gradle.html"><code class="literal">Gradle</code></a></li><li><a class="link" href="org.gradle.api.initialization.Settings.html"><code class="literal">Settings</code></a></li><li><a class="link" href="org.gradle.api.initialization.IncludedBuild.html"><code class="literal">IncludedBuild</code></a></li><li><a class="link" href="org.gradle.api.file.ProjectLayout.html"><code class="literal">ProjectLayout</code></a></li><li><a class="link" href="org.gradle.api.file.BuildLayout.html"><code class="literal">BuildLayout</code></a></li><li><a class="link" href="org.gradle.api.Script.html"><code class="literal">Script</code></a></li><li><a class="link" href="org.gradle.api.tasks.SourceSet.html"><code class="literal">SourceSet</code></a></li><li><a class="link" href="org.gradle.api.tasks.SourceSetOutput.html"><code class="literal">SourceSetOutput</code></a></li><li><a class="link" href="org.gradle.api.file.SourceDirectorySet.html"><code class="literal">SourceDirectorySet</code></a></li><li><a class="link" href="org.gradle.api.artifacts.Configuration.html"><code class="literal">Configuration</code></a></li><li><a class="link" href="org.gradle.api.artifacts.ConsumableConfiguration.html"><code class="literal">ConsumableConfiguration</code></a></li><li><a class="link" href="org.gradle.api.artifacts.ResolvableConfiguration.html"><code class="literal">ResolvableConfiguration</code></a></li><li><a class="link" href="org.gradle.api.artifacts.DependencyScopeConfiguration.html"><code class="literal">DependencyScopeConfiguration</code></a></li><li><a class="link" href="org.gradle.api.artifacts.ResolutionStrategy.html"><code class="literal">ResolutionStrategy</code></a></li><li><a class="link" href="org.gradle.api.artifacts.query.ArtifactResolutionQuery.html"><code class="literal">ArtifactResolutionQuery</code></a></li><li><a class="link" href="org.gradle.api.artifacts.ComponentSelection.html"><code class="literal">ComponentSelection</code></a></li><li><a class="link" href="org.gradle.api.artifacts.ComponentSelectionRules.html"><code class="literal">ComponentSelectionRules</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.DependencyCollector.html"><code class="literal">DependencyCollector</code></a></li><li><a class="link" href="org.gradle.api.plugins.ExtensionAware.html"><code class="literal">ExtensionAware</code></a></li><li><a class="link" href="org.gradle.api.plugins.ExtraPropertiesExtension.html"><code class="literal">ExtraPropertiesExtension</code></a></li><li><a class="link" href="org.gradle.plugin.use.PluginDependenciesSpec.html"><code class="literal">PluginDependenciesSpec</code></a></li><li><a class="link" href="org.gradle.plugin.use.PluginDependencySpec.html"><code class="literal">PluginDependencySpec</code></a></li><li><a class="link" href="org.gradle.plugin.management.PluginManagementSpec.html"><code class="literal">PluginManagementSpec</code></a></li><li><a class="link" href="org.gradle.api.provider.ProviderFactory.html"><code class="literal">ProviderFactory</code></a></li><li><a class="link" href="org.gradle.api.resources.ResourceHandler.html"><code class="literal">ResourceHandler</code></a></li><li><a class="link" href="org.gradle.api.resources.TextResourceFactory.html"><code class="literal">TextResourceFactory</code></a></li><li><a class="link" href="org.gradle.work.InputChanges.html"><code class="literal">InputChanges</code></a></li><li><a class="link" href="org.gradle.api.distribution.Distribution.html"><code class="literal">Distribution</code></a></li><li><h3>Publishing types</h3></li><li><a class="link" href="org.gradle.api.publish.PublishingExtension.html"><code class="literal">PublishingExtension</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyPublication.html"><code class="literal">IvyPublication</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyArtifact.html"><code class="literal">IvyArtifact</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyArtifactSet.html"><code class="literal">IvyArtifactSet</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorSpec.html"><code class="literal">IvyModuleDescriptorSpec</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorAuthor.html"><code class="literal">IvyModuleDescriptorAuthor</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorLicense.html"><code class="literal">IvyModuleDescriptorLicense</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorDescription.html"><code class="literal">IvyModuleDescriptorDescription</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPublication.html"><code class="literal">MavenPublication</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenArtifact.html"><code class="literal">MavenArtifact</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenArtifactSet.html"><code class="literal">MavenArtifactSet</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPom.html"><code class="literal">MavenPom</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomCiManagement.html"><code class="literal">MavenPomCiManagement</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomContributor.html"><code class="literal">MavenPomContributor</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomContributorSpec.html"><code class="literal">MavenPomContributorSpec</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomDeveloper.html"><code class="literal">MavenPomDeveloper</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomDeveloperSpec.html"><code class="literal">MavenPomDeveloperSpec</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomDistributionManagement.html"><code class="literal">MavenPomDistributionManagement</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomIssueManagement.html"><code class="literal">MavenPomIssueManagement</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomLicense.html"><code class="literal">MavenPomLicense</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomLicenseSpec.html"><code class="literal">MavenPomLicenseSpec</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomMailingList.html"><code class="literal">MavenPomMailingList</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomMailingListSpec.html"><code class="literal">MavenPomMailingListSpec</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomOrganization.html"><code class="literal">MavenPomOrganization</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomRelocation.html"><code class="literal">MavenPomRelocation</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.MavenPomScm.html"><code class="literal">MavenPomScm</code></a></li><li><h3>Container types</h3></li><li><a class="link" href="org.gradle.api.tasks.TaskContainer.html"><code class="literal">TaskContainer</code></a></li><li><a class="link" href="org.gradle.api.artifacts.ConfigurationContainer.html"><code class="literal">ConfigurationContainer</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.RepositoryHandler.html"><code class="literal">RepositoryHandler</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.DependencyHandler.html"><code class="literal">DependencyHandler</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.ComponentMetadataHandler.html"><code class="literal">ComponentMetadataHandler</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.ArtifactHandler.html"><code class="literal">ArtifactHandler</code></a></li><li><h3>Build Cache types</h3></li><li><a class="link" href="org.gradle.caching.configuration.BuildCacheConfiguration.html"><code class="literal">BuildCacheConfiguration</code></a></li><li><a class="link" href="org.gradle.caching.local.DirectoryBuildCache.html"><code class="literal">DirectoryBuildCache</code></a></li><li><a class="link" href="org.gradle.caching.http.HttpBuildCache.html"><code class="literal">HttpBuildCache</code></a></li><li><h3>Input Normalization types</h3></li><li><a class="link" href="org.gradle.normalization.InputNormalizationHandler.html"><code class="literal">InputNormalizationHandler</code></a></li><li><a class="link" href="org.gradle.normalization.InputNormalization.html"><code class="literal">InputNormalization</code></a></li><li><a class="link" href="org.gradle.normalization.RuntimeClasspathNormalization.html"><code class="literal">RuntimeClasspathNormalization</code></a></li><li><h3>Help Task types</h3></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.TaskReportTask.html"><code class="literal">TaskReportTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.ProjectReportTask.html"><code class="literal">ProjectReportTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.DependencyReportTask.html"><code class="literal">DependencyReportTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.DependencyInsightReportTask.html"><code class="literal">DependencyInsightReportTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.PropertyReportTask.html"><code class="literal">PropertyReportTask</code></a></li><li><a class="link" href="org.gradle.api.reporting.components.ComponentReport.html"><code class="literal">ComponentReport</code></a></li><li><a class="link" href="org.gradle.api.reporting.dependents.DependentComponentsReport.html"><code class="literal">DependentComponentsReport</code></a></li><li><a class="link" href="org.gradle.api.reporting.model.ModelReport.html"><code class="literal">ModelReport</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.OutgoingVariantsReportTask.html"><code class="literal">OutgoingVariantsReportTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.ResolvableConfigurationsReportTask.html"><code class="literal">ResolvableConfigurationsReportTask</code></a></li><li><h3>Task types</h3></li><li><a class="link" href="org.gradle.api.plugins.antlr.AntlrTask.html"><code class="literal">AntlrTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.diagnostics.BuildEnvironmentReportTask.html"><code class="literal">BuildEnvironmentReportTask</code></a></li><li><a class="link" href="org.gradle.api.plugins.quality.Checkstyle.html"><code class="literal">Checkstyle</code></a></li><li><a class="link" href="org.gradle.api.plugins.quality.CodeNarc.html"><code class="literal">CodeNarc</code></a></li><li><a class="link" href="org.gradle.api.tasks.Copy.html"><code class="literal">Copy</code></a></li><li><a class="link" href="org.gradle.jvm.application.tasks.CreateStartScripts.html"><code class="literal">CreateStartScripts</code></a></li><li><a class="link" href="org.gradle.api.tasks.Delete.html"><code class="literal">Delete</code></a></li><li><a class="link" href="org.gradle.plugins.ear.Ear.html"><code class="literal">Ear</code></a></li><li><a class="link" href="org.gradle.api.tasks.Exec.html"><code class="literal">Exec</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.tasks.GenerateIvyDescriptor.html"><code class="literal">GenerateIvyDescriptor</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.tasks.GenerateMavenPom.html"><code class="literal">GenerateMavenPom</code></a></li><li><a class="link" href="org.gradle.api.reporting.GenerateBuildDashboard.html"><code class="literal">GenerateBuildDashboard</code></a></li><li><a class="link" href="org.gradle.api.tasks.GradleBuild.html"><code class="literal">GradleBuild</code></a></li><li><a class="link" href="org.gradle.api.tasks.compile.GroovyCompile.html"><code class="literal">GroovyCompile</code></a></li><li><a class="link" href="org.gradle.api.tasks.javadoc.Groovydoc.html"><code class="literal">Groovydoc</code></a></li><li><a class="link" href="org.gradle.api.reporting.dependencies.HtmlDependencyReportTask.html"><code class="literal">HtmlDependencyReportTask</code></a></li><li><a class="link" href="org.gradle.testing.jacoco.tasks.JacocoReport.html"><code class="literal">JacocoReport</code></a></li><li><a class="link" href="org.gradle.testing.jacoco.tasks.JacocoCoverageVerification.html"><code class="literal">JacocoCoverageVerification</code></a></li><li><a class="link" href="org.gradle.api.tasks.bundling.Jar.html"><code class="literal">Jar</code></a></li><li><a class="link" href="org.gradle.api.tasks.compile.JavaCompile.html"><code class="literal">JavaCompile</code></a></li><li><a class="link" href="org.gradle.api.tasks.javadoc.Javadoc.html"><code class="literal">Javadoc</code></a></li><li><a class="link" href="org.gradle.api.tasks.JavaExec.html"><code class="literal">JavaExec</code></a></li><li><a class="link" href="org.gradle.api.plugins.quality.Pmd.html"><code class="literal">Pmd</code></a></li><li><a class="link" href="org.gradle.language.jvm.tasks.ProcessResources.html"><code class="literal">ProcessResources</code></a></li><li><a class="link" href="org.gradle.api.publish.ivy.tasks.PublishToIvyRepository.html"><code class="literal">PublishToIvyRepository</code></a></li><li><a class="link" href="org.gradle.api.publish.maven.tasks.PublishToMavenRepository.html"><code class="literal">PublishToMavenRepository</code></a></li><li><a class="link" href="org.gradle.api.tasks.scala.ScalaCompile.html"><code class="literal">ScalaCompile</code></a></li><li><a class="link" href="org.gradle.api.tasks.scala.ScalaDoc.html"><code class="literal">ScalaDoc</code></a></li><li><a class="link" href="org.gradle.buildconfiguration.tasks.UpdateDaemonJvm.html"><code class="literal">UpdateDaemonJvm</code></a></li><li><a class="link" href="org.gradle.buildinit.tasks.InitBuild.html"><code class="literal">InitBuild</code></a></li><li><a class="link" href="org.gradle.plugins.signing.Sign.html"><code class="literal">Sign</code></a></li><li><a class="link" href="org.gradle.api.tasks.Sync.html"><code class="literal">Sync</code></a></li><li><a class="link" href="org.gradle.api.tasks.bundling.Tar.html"><code class="literal">Tar</code></a></li><li><a class="link" href="org.gradle.api.tasks.testing.AbstractTestTask.html"><code class="literal">AbstractTestTask</code></a></li><li><a class="link" href="org.gradle.api.tasks.testing.Test.html"><code class="literal">Test</code></a></li><li><a class="link" href="org.gradle.api.tasks.testing.TestReport.html"><code class="literal">TestReport</code></a></li><li><a class="link" href="org.gradle.api.tasks.bundling.War.html"><code class="literal">War</code></a></li><li><a class="link" href="org.gradle.api.tasks.wrapper.Wrapper.html"><code class="literal">Wrapper</code></a></li><li><a class="link" href="org.gradle.api.tasks.WriteProperties.html"><code class="literal">WriteProperties</code></a></li><li><a class="link" href="org.gradle.api.tasks.bundling.Zip.html"><code class="literal">Zip</code></a></li><li><h3>Test types</h3></li><li><a class="link" href="org.gradle.testing.base.TestingExtension.html"><code class="literal">TestingExtension</code></a></li><li><a class="link" href="org.gradle.testing.base.TestSuite.html"><code class="literal">TestSuite</code></a></li><li><a class="link" href="org.gradle.api.plugins.jvm.JvmTestSuite.html"><code class="literal">JvmTestSuite</code></a></li><li><a class="link" href="org.gradle.testing.base.TestSuiteTarget.html"><code class="literal">TestSuiteTarget</code></a></li><li><a class="link" href="org.gradle.api.plugins.jvm.JvmTestSuiteTarget.html"><code class="literal">JvmTestSuiteTarget</code></a></li><li><a class="link" href="org.gradle.api.tasks.testing.Test.html"><code class="literal">Test</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.Dependencies.html"><code class="literal">Dependencies</code></a></li><li><a class="link" href="org.gradle.api.artifacts.dsl.GradleDependencies.html"><code class="literal">GradleDependencies</code></a></li><li><a class="link" href="org.gradle.api.plugins.jvm.TestFixturesDependencyModifiers.html"><code class="literal">TestFixturesDependencyModifiers</code></a></li><li><a class="link" href="org.gradle.api.plugins.jvm.PlatformDependencyModifiers.html"><code class="literal">PlatformDependencyModifiers</code></a></li><li><a class="link" href="org.gradle.api.plugins.jvm.JvmComponentDependencies.html"><code class="literal">JvmComponentDependencies</code></a></li><li><h3>Reporting types</h3></li><li><a class="link" href="org.gradle.api.reporting.CustomizableHtmlReport.html"><code class="literal">CustomizableHtmlReport</code></a></li><li><a class="link" href="org.gradle.api.reporting.SingleFileReport.html"><code class="literal">SingleFileReport</code></a></li><li><a class="link" href="org.gradle.api.reporting.DirectoryReport.html"><code class="literal">DirectoryReport</code></a></li><li><a class="link" href="org.gradle.api.reporting.Report.html"><code class="literal">Report</code></a></li><li><a class="link" href="org.gradle.api.reporting.Reporting.html"><code class="literal">Reporting</code></a></li><li><a class="link" href="org.gradle.api.reporting.ReportContainer.html"><code class="literal">ReportContainer</code></a></li><li><a class="link" href="org.gradle.api.reporting.ReportingExtension.html"><code class="literal">ReportingExtension</code></a></li><li><a class="link" href="org.gradle.api.tasks.testing.AggregateTestReport.html"><code class="literal">AggregateTestReport</code></a></li><li><a class="link" href="org.gradle.testing.jacoco.plugins.JacocoCoverageReport.html"><code class="literal">JacocoCoverageReport</code></a></li><li><h3>Eclipse/IDEA model types</h3></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseModel.html"><code class="literal">EclipseModel</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseProject.html"><code class="literal">EclipseProject</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseClasspath.html"><code class="literal">EclipseClasspath</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseJdt.html"><code class="literal">EclipseJdt</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseWtp.html"><code class="literal">EclipseWtp</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseWtpComponent.html"><code class="literal">EclipseWtpComponent</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseWtpFacet.html"><code class="literal">EclipseWtpFacet</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaModel.html"><code class="literal">IdeaModel</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaProject.html"><code class="literal">IdeaProject</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaModule.html"><code class="literal">IdeaModule</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaWorkspace.html"><code class="literal">IdeaWorkspace</code></a></li><li><a class="link" href="org.gradle.plugins.ide.api.XmlFileContentMerger.html"><code class="literal">XmlFileContentMerger</code></a></li><li><a class="link" href="org.gradle.plugins.ide.api.FileContentMerger.html"><code class="literal">FileContentMerger</code></a></li><li><h3>Eclipse/IDEA task types</h3></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseProject.html"><code class="literal">GenerateEclipseProject</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseClasspath.html"><code class="literal">GenerateEclipseClasspath</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseJdt.html"><code class="literal">GenerateEclipseJdt</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseWtpComponent.html"><code class="literal">GenerateEclipseWtpComponent</code></a></li><li><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseWtpFacet.html"><code class="literal">GenerateEclipseWtpFacet</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.GenerateIdeaModule.html"><code class="literal">GenerateIdeaModule</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.GenerateIdeaProject.html"><code class="literal">GenerateIdeaProject</code></a></li><li><a class="link" href="org.gradle.plugins.ide.idea.GenerateIdeaWorkspace.html"><code class="literal">GenerateIdeaWorkspace</code></a></li><li><h3>Xcode task types</h3></li><li><a class="link" href="org.gradle.ide.xcode.tasks.GenerateSchemeFileTask.html"><code class="literal">GenerateSchemeFileTask</code></a></li><li><a class="link" href="org.gradle.ide.xcode.tasks.GenerateWorkspaceSettingsFileTask.html"><code class="literal">GenerateWorkspaceSettingsFileTask</code></a></li><li><a class="link" href="org.gradle.ide.xcode.tasks.GenerateXcodeProjectFileTask.html"><code class="literal">GenerateXcodeProjectFileTask</code></a></li><li><a class="link" href="org.gradle.ide.xcode.tasks.GenerateXcodeWorkspaceFileTask.html"><code class="literal">GenerateXcodeWorkspaceFileTask</code></a></li><li><h3>Visual Studio task types</h3></li><li><a class="link" href="org.gradle.ide.visualstudio.tasks.GenerateSolutionFileTask.html"><code class="literal">GenerateSolutionFileTask</code></a></li><li><a class="link" href="org.gradle.ide.visualstudio.tasks.GenerateProjectFileTask.html"><code class="literal">GenerateProjectFileTask</code></a></li><li><a class="link" href="org.gradle.ide.visualstudio.tasks.GenerateFiltersFileTask.html"><code class="literal">GenerateFiltersFileTask</code></a></li><li><h3>Artifact transform types</h3></li><li><a class="link" href="org.gradle.api.artifacts.transform.TransformAction.html"><code class="literal">TransformAction</code></a></li><li><a class="link" href="org.gradle.api.artifacts.transform.TransformOutputs.html"><code class="literal">TransformOutputs</code></a></li><li><a class="link" href="org.gradle.api.artifacts.transform.TransformSpec.html"><code class="literal">TransformSpec</code></a></li><li><h3>Native tool chain types</h3></li><li><a class="link" href="org.gradle.nativeplatform.toolchain.Gcc.html"><code class="literal">Gcc</code></a></li><li><a class="link" href="org.gradle.nativeplatform.toolchain.Clang.html"><code class="literal">Clang</code></a></li><li><a class="link" href="org.gradle.nativeplatform.toolchain.VisualCpp.html"><code class="literal">VisualCpp</code></a></li><li><a class="link" href="org.gradle.nativeplatform.toolchain.Swiftc.html"><code class="literal">Swiftc</code></a></li><li><h3>C++ component types</h3></li><li><a class="link" href="org.gradle.language.cpp.CppApplication.html"><code class="literal">CppApplication</code></a></li><li><a class="link" href="org.gradle.language.cpp.CppLibrary.html"><code class="literal">CppLibrary</code></a></li><li><a class="link" href="org.gradle.nativeplatform.test.cpp.CppTestSuite.html"><code class="literal">CppTestSuite</code></a></li><li><h3>Swift component types</h3></li><li><a class="link" href="org.gradle.language.swift.SwiftApplication.html"><code class="literal">SwiftApplication</code></a></li><li><a class="link" href="org.gradle.language.swift.SwiftLibrary.html"><code class="literal">SwiftLibrary</code></a></li><li><a class="link" href="org.gradle.nativeplatform.test.xctest.SwiftXCTestSuite.html"><code class="literal">SwiftXCTestSuite</code></a></li><li><h3>Native component task types</h3></li><li><a class="link" href="org.gradle.language.cpp.tasks.CppCompile.html"><code class="literal">CppCompile</code></a></li><li><a class="link" href="org.gradle.language.swift.tasks.SwiftCompile.html"><code class="literal">SwiftCompile</code></a></li><li><a class="link" href="org.gradle.nativeplatform.tasks.LinkExecutable.html"><code class="literal">LinkExecutable</code></a></li><li><a class="link" href="org.gradle.nativeplatform.tasks.LinkSharedLibrary.html"><code class="literal">LinkSharedLibrary</code></a></li><li><a class="link" href="org.gradle.nativeplatform.tasks.CreateStaticLibrary.html"><code class="literal">CreateStaticLibrary</code></a></li><li><a class="link" href="org.gradle.nativeplatform.tasks.LinkMachOBundle.html"><code class="literal">LinkMachOBundle</code></a></li><li><a class="link" href="org.gradle.nativeplatform.tasks.InstallExecutable.html"><code class="literal">InstallExecutable</code></a></li><li><a class="link" href="org.gradle.nativeplatform.test.xctest.tasks.InstallXCTestBundle.html"><code class="literal">InstallXCTestBundle</code></a></li><li><a class="link" href="org.gradle.nativeplatform.test.tasks.RunTestExecutable.html"><code class="literal">RunTestExecutable</code></a></li><li><a class="link" href="org.gradle.nativeplatform.test.xctest.tasks.XCTest.html"><code class="literal">XCTest</code></a></li></ul></nav><div class="content"><div id="content"><div class="book"><div xmlns:xslthl="http://xslthl.sf.net" id="header" class="titlepage"><div class="title"><div><h1 class="title"><a name="dsl"></a>Gradle Build Language Reference</h1></div><div><h3 class="releaseinfo">Version 8.11.1</h3></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N1000C" class="section-anchor" href="#N1000C"></a>Introduction</h2></div></div></div><p>This reference guide describes the various types which make up the Gradle build language, or DSL.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10011" class="section-anchor" href="#N10011"></a>Some basics</h2></div></div></div><p>There are a few basic concepts that you should understand, which will help you write Gradle scripts.</p><p>First, Gradle scripts are <em class="firstterm">configuration scripts</em>. As the script executes, it configures an object of a particular type. For example, as a build script executes, it configures an object of type <a class="ulink" href="../dsl/org.gradle.api.Project.html" target="_top"><code class="classname">Project</code></a>. This object is called the <em class="firstterm">delegate object</em> of the script. The following table shows the delegate for each type of Gradle script. </p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table id="N10023"><thead><tr> <td>Type of script</td> <td>Delegates to instance of</td> </tr></thead><tr> <td>Build script</td> <td> <a class="ulink" href="../dsl/org.gradle.api.Project.html" target="_top"><code class="classname">Project</code></a> </td> </tr><tr> <td>Init script</td> <td> <a class="ulink" href="../dsl/org.gradle.api.invocation.Gradle.html" target="_top"><code class="classname">Gradle</code></a> </td> </tr><tr> <td>Settings script</td> <td> <a class="ulink" href="../dsl/org.gradle.api.initialization.Settings.html" target="_top"><code class="classname">Settings</code></a> </td> </tr></table></div></div><p>The properties and methods of the delegate object are available for you to use in the script.</p><p>Second, each Gradle script implements the <a class="ulink" href="../dsl/org.gradle.api.Script.html" target="_top"><code class="classname">Script</code></a> interface. This interface defines a number of properties and methods which you can use in the script. </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10060" class="section-anchor" href="#N10060"></a>Build script structure</h2></div></div></div><p>A build script is made up of zero or more statements and script blocks. Statements can include method calls, property assignments, and local variable definitions. A script block is a method call which takes a closure as a parameter. The closure is treated as a <em class="firstterm">configuration closure</em> which configures some delegate object as it executes. The top level script blocks are listed below.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10068"><thead><tr><td>Block</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:allprojects(groovy.lang.Closure)"><code class="literal">allprojects { }</code></a></td><td><p>Configures this project and each of its sub-projects.</p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:artifacts(groovy.lang.Closure)"><code class="literal">artifacts { }</code></a></td><td><p>Configures the published artifacts for this project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:buildscript(groovy.lang.Closure)"><code class="literal">buildscript { }</code></a></td><td><p>Configures the build script classpath for this project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:configurations(groovy.lang.Closure)"><code class="literal">configurations { }</code></a></td><td><p>Configures the dependency configurations for this project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:dependencies(groovy.lang.Closure)"><code class="literal">dependencies { }</code></a></td><td><p>Configures the dependencies for this project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:repositories(groovy.lang.Closure)"><code class="literal">repositories { }</code></a></td><td><p>Configures the repositories for this project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:sourceSets(groovy.lang.Closure)"><code class="literal">sourceSets { }</code></a></td><td><p>Configures the source sets of this project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:subprojects(groovy.lang.Closure)"><code class="literal">subprojects { }</code></a></td><td><p>Configures the sub-projects of this project.</p></td></tr><tr><td><a class="link" href="org.gradle.api.Project.html#org.gradle.api.Project:publishing(groovy.lang.Closure)"><code class="literal">publishing { }</code></a></td><td><p>Configures the <a class="ulink" href="../dsl/org.gradle.api.publish.PublishingExtension.html" target="_top"><code class="classname">PublishingExtension</code></a> added by the publishing plugin.</p></td></tr></table></div></div><p>A build script is also a Groovy script, and so can contain those elements allowed in a Groovy script, such as method definitions and class definitions. </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N100CA" class="section-anchor" href="#N100CA"></a>Core types</h2></div></div></div><p>Listed below are some of the central types which are used in Gradle scripts:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N100CF"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.Project.html"><code class="literal">Project</code></a></td><td><p>This interface is the main API you use to interact with Gradle from your build file. From a <code class="literal">Project</code>, you have programmatic access to all of Gradle's features.</p></td></tr><tr><td><a class="link" href="org.gradle.api.Task.html"><code class="literal">Task</code></a></td><td><p>A <code class="literal">Task</code> represents a single atomic piece of work for a build, such as compiling classes or generating javadoc.</p></td></tr><tr><td><a class="link" href="org.gradle.api.invocation.Gradle.html"><code class="literal">Gradle</code></a></td><td><p>Represents an invocation of Gradle. </p></td></tr><tr><td><a class="link" href="org.gradle.api.initialization.Settings.html"><code class="literal">Settings</code></a></td><td><p>Declares the configuration required to instantiate and configure the hierarchy of <a class="ulink" href="../dsl/org.gradle.api.Project.html" target="_top"><code class="classname">Project</code></a> instances which are to participate in a build.</p></td></tr><tr><td><a class="link" href="org.gradle.api.initialization.IncludedBuild.html"><code class="literal">IncludedBuild</code></a></td><td><p>A build that is included in the composite.</p></td></tr><tr><td><a class="link" href="org.gradle.api.file.ProjectLayout.html"><code class="literal">ProjectLayout</code></a></td><td><p>Provides access to several important locations for a project. </p></td></tr><tr><td><a class="link" href="org.gradle.api.file.BuildLayout.html"><code class="literal">BuildLayout</code></a></td><td><p>Provides access to important locations for a Gradle build. </p></td></tr><tr><td><a class="link" href="org.gradle.api.Script.html"><code class="literal">Script</code></a></td><td><p>This interface is implemented by all Gradle Groovy DSL scripts to add in some Gradle-specific methods. As your compiled script class will implement this interface, you can use the methods and properties declared by this interface directly in your script.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.SourceSet.html"><code class="literal">SourceSet</code></a></td><td><p>A <code class="literal">SourceSet</code> represents a logical group of Java source and resource files. They are covered in more detail in the <a class="ulink" href="https://docs.gradle.org/current/userguide/building_java_projects.html#sec:java_source_sets" target="_top">user manual</a>. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.SourceSetOutput.html"><code class="literal">SourceSetOutput</code></a></td><td><p>A collection of all output directories (compiled classes, processed resources, etc.) - notice that <a class="ulink" href="../dsl/org.gradle.api.tasks.SourceSetOutput.html" target="_top"><code class="classname">SourceSetOutput</code></a> extends <a class="ulink" href="../javadoc/org/gradle/api/file/FileCollection.html" target="_top"><code class="classname">FileCollection</code></a>. </p></td></tr><tr><td><a class="link" href="org.gradle.api.file.SourceDirectorySet.html"><code class="literal">SourceDirectorySet</code></a></td><td><p>A <code class="literal">SourceDirectorySet</code> represents a set of source files composed from a set of source directories, along with associated include and exclude patterns. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.Configuration.html"><code class="literal">Configuration</code></a></td><td><p>A <code class="literal">Configuration</code> represents a group of artifacts and their dependencies. Find more information about declaring dependencies to a configuration or about managing configurations in docs for <a class="ulink" href="../dsl/org.gradle.api.artifacts.ConfigurationContainer.html" target="_top"><code class="classname">ConfigurationContainer</code></a> </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.ConsumableConfiguration.html"><code class="literal">ConsumableConfiguration</code></a></td><td><p>A <a class="ulink" href="../dsl/org.gradle.api.artifacts.Configuration.html" target="_top"><code class="classname">Configuration</code></a> which can be consumed via Publishing and Dependency Management.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.ResolvableConfiguration.html"><code class="literal">ResolvableConfiguration</code></a></td><td><p>A <a class="ulink" href="../dsl/org.gradle.api.artifacts.Configuration.html" target="_top"><code class="classname">Configuration</code></a> which performs dependency resolution to build dependency graphs and resolve artifacts.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.DependencyScopeConfiguration.html"><code class="literal">DependencyScopeConfiguration</code></a></td><td><p>A <a class="ulink" href="../dsl/org.gradle.api.artifacts.Configuration.html" target="_top"><code class="classname">Configuration</code></a> which collects dependencies, dependency constraints, and exclude rules.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.ResolutionStrategy.html"><code class="literal">ResolutionStrategy</code></a></td><td><p>Defines the strategies around dependency resolution. For example, forcing certain dependency versions, substitutions, conflict resolutions or snapshot timeouts. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.query.ArtifactResolutionQuery.html"><code class="literal">ArtifactResolutionQuery</code></a></td><td><p>A builder to construct a query that can resolve selected software artifacts of the specified components. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.ComponentSelection.html"><code class="literal">ComponentSelection</code></a></td><td><p>Represents a tuple of the component selector of a module and a candidate version to be evaluated in a component selection rule.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.ComponentSelectionRules.html"><code class="literal">ComponentSelectionRules</code></a></td><td><p>Represents a container for component selection rules. Rules can be applied as part of the resolutionStrategy of a configuration and individual components can be explicitly accepted or rejected by rule. Components that are neither accepted or rejected will be subject to the default version matching strategies. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.DependencyCollector.html"><code class="literal">DependencyCollector</code></a></td><td><p>A <code class="literal">DependencyCollector</code> is used as part of a dependencies block in the DSL. A collector implements a single dependency scope and exposes the declared dependencies on <a class="ulink" href="../javadoc/org/gradle/api/artifacts/dsl/DependencyCollector.html#getDependencies--" target="_top"><code class="classname">DependencyCollector.getDependencies()</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.ExtensionAware.html"><code class="literal">ExtensionAware</code></a></td><td><p>Objects that can be extended at runtime with other objects. </p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.ExtraPropertiesExtension.html"><code class="literal">ExtraPropertiesExtension</code></a></td><td><p>Additional, ad-hoc, properties for Gradle domain objects. </p></td></tr><tr><td><a class="link" href="org.gradle.plugin.use.PluginDependenciesSpec.html"><code class="literal">PluginDependenciesSpec</code></a></td><td><p>The DSL for declaring plugins to use in a script. </p></td></tr><tr><td><a class="link" href="org.gradle.plugin.use.PluginDependencySpec.html"><code class="literal">PluginDependencySpec</code></a></td><td><p>A mutable specification of a dependency on a plugin. </p></td></tr><tr><td><a class="link" href="org.gradle.plugin.management.PluginManagementSpec.html"><code class="literal">PluginManagementSpec</code></a></td><td><p>Configures how plugins are resolved.</p></td></tr><tr><td><a class="link" href="org.gradle.api.provider.ProviderFactory.html"><code class="literal">ProviderFactory</code></a></td><td><p>A factory for creating instances of <a class="ulink" href="../javadoc/org/gradle/api/provider/Provider.html" target="_top"><code class="classname">Provider</code></a>. </p></td></tr><tr><td><a class="link" href="org.gradle.api.resources.ResourceHandler.html"><code class="literal">ResourceHandler</code></a></td><td><p>Provides access to resource-specific utility methods, for example factory methods that create various resources.</p></td></tr><tr><td><a class="link" href="org.gradle.api.resources.TextResourceFactory.html"><code class="literal">TextResourceFactory</code></a></td><td><p>Creates <code class="literal">TextResource</code>s backed by sources such as strings, files, and archive entries. </p></td></tr><tr><td><a class="link" href="org.gradle.work.InputChanges.html"><code class="literal">InputChanges</code></a></td><td><p>Provides access to any input files that need to be processed by an incremental work action. </p></td></tr><tr><td><a class="link" href="org.gradle.api.distribution.Distribution.html"><code class="literal">Distribution</code></a></td><td><p>A distribution allows to bundle an application or a library including dependencies, sources...</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N1022D" class="section-anchor" href="#N1022D"></a>Publishing types</h2></div></div></div><p>Listed below are the types used to configure publishing:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10232"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.publish.PublishingExtension.html"><code class="literal">PublishingExtension</code></a></td><td><p>The configuration of how to “publish” the different components of a project.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyPublication.html"><code class="literal">IvyPublication</code></a></td><td><p>An <code class="literal">IvyPublication</code> is the representation/configuration of how Gradle should publish something in Ivy format, to an Ivy repository. You directly add a named Ivy publication the project's <code class="literal">publishing.publications</code> container by providing <a class="ulink" href="../dsl/org.gradle.api.publish.ivy.IvyPublication.html" target="_top"><code class="classname">IvyPublication</code></a> as the type. </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyArtifact.html"><code class="literal">IvyArtifact</code></a></td><td><p>An artifact published as part of a <a class="ulink" href="../dsl/org.gradle.api.publish.ivy.IvyPublication.html" target="_top"><code class="classname">IvyPublication</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyArtifactSet.html"><code class="literal">IvyArtifactSet</code></a></td><td><p>A Collection of <a class="ulink" href="../dsl/org.gradle.api.publish.ivy.IvyArtifact.html" target="_top"><code class="classname">IvyArtifact</code></a>s to be included in an <a class="ulink" href="../dsl/org.gradle.api.publish.ivy.IvyPublication.html" target="_top"><code class="classname">IvyPublication</code></a>. Being a <a class="ulink" href="../javadoc/org/gradle/api/DomainObjectSet.html" target="_top"><code class="classname">DomainObjectSet</code></a>, an <code class="literal">IvyArtifactSet</code> provides convenient methods for querying, filtering, and applying actions to the set of <a class="ulink" href="../dsl/org.gradle.api.publish.ivy.IvyArtifact.html" target="_top"><code class="classname">IvyArtifact</code></a>s. </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorSpec.html"><code class="literal">IvyModuleDescriptorSpec</code></a></td><td><p>The descriptor of any Ivy publication. </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorAuthor.html"><code class="literal">IvyModuleDescriptorAuthor</code></a></td><td><p>An author of an Ivy publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorLicense.html"><code class="literal">IvyModuleDescriptorLicense</code></a></td><td><p>A license of an Ivy publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.IvyModuleDescriptorDescription.html"><code class="literal">IvyModuleDescriptorDescription</code></a></td><td><p>The description of an Ivy publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPublication.html"><code class="literal">MavenPublication</code></a></td><td><p>A <code class="literal">MavenPublication</code> is the representation/configuration of how Gradle should publish something in Maven format. You directly add a named Maven publication the project's <code class="literal">publishing.publications</code> container by providing <a class="ulink" href="../dsl/org.gradle.api.publish.maven.MavenPublication.html" target="_top"><code class="classname">MavenPublication</code></a> as the type. </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenArtifact.html"><code class="literal">MavenArtifact</code></a></td><td><p>An artifact published as part of a <a class="ulink" href="../dsl/org.gradle.api.publish.maven.MavenPublication.html" target="_top"><code class="classname">MavenPublication</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenArtifactSet.html"><code class="literal">MavenArtifactSet</code></a></td><td><p>A Collection of <a class="ulink" href="../dsl/org.gradle.api.publish.maven.MavenArtifact.html" target="_top"><code class="classname">MavenArtifact</code></a>s to be included in a <a class="ulink" href="../dsl/org.gradle.api.publish.maven.MavenPublication.html" target="_top"><code class="classname">MavenPublication</code></a>. Being a <a class="ulink" href="../javadoc/org/gradle/api/DomainObjectSet.html" target="_top"><code class="classname">DomainObjectSet</code></a>, a <code class="literal">MavenArtifactSet</code> provides convenient methods for querying, filtering, and applying actions to the set of <a class="ulink" href="../dsl/org.gradle.api.publish.maven.MavenArtifact.html" target="_top"><code class="classname">MavenArtifact</code></a>s. </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPom.html"><code class="literal">MavenPom</code></a></td><td><p>The POM for a Maven publication. </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomCiManagement.html"><code class="literal">MavenPomCiManagement</code></a></td><td><p>The CI management system of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomContributor.html"><code class="literal">MavenPomContributor</code></a></td><td><p>A contributor of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomContributorSpec.html"><code class="literal">MavenPomContributorSpec</code></a></td><td><p>Allows to add contributors of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomDeveloper.html"><code class="literal">MavenPomDeveloper</code></a></td><td><p>A developer of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomDeveloperSpec.html"><code class="literal">MavenPomDeveloperSpec</code></a></td><td><p>Allows to add developers to a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomDistributionManagement.html"><code class="literal">MavenPomDistributionManagement</code></a></td><td><p>The distribution management configuration of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomIssueManagement.html"><code class="literal">MavenPomIssueManagement</code></a></td><td><p>The issue management system of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomLicense.html"><code class="literal">MavenPomLicense</code></a></td><td><p>A license of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomLicenseSpec.html"><code class="literal">MavenPomLicenseSpec</code></a></td><td><p>Allows to add licenses to a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomMailingList.html"><code class="literal">MavenPomMailingList</code></a></td><td><p>A mailing list of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomMailingListSpec.html"><code class="literal">MavenPomMailingListSpec</code></a></td><td><p>Allows to add mailing lists to a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomOrganization.html"><code class="literal">MavenPomOrganization</code></a></td><td><p>The organization of a Maven publication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomRelocation.html"><code class="literal">MavenPomRelocation</code></a></td><td><p>The relocation information of a Maven publication that has been moved to a new group and/or artifact ID.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.MavenPomScm.html"><code class="literal">MavenPomScm</code></a></td><td><p>The SCM (source control management) of a Maven publication.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10374" class="section-anchor" href="#N10374"></a>Container types</h2></div></div></div><p>Container types that handle various declarative elements (e.g. dependencies, configurations, artifacts, tasks, etc.):</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10379"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.tasks.TaskContainer.html"><code class="literal">TaskContainer</code></a></td><td><p>A <code class="literal">TaskContainer</code> is responsible for managing a set of <a class="ulink" href="../dsl/org.gradle.api.Task.html" target="_top"><code class="classname">Task</code></a> instances.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.ConfigurationContainer.html"><code class="literal">ConfigurationContainer</code></a></td><td><p>A <code class="literal">ConfigurationContainer</code> is responsible for declaring and managing configurations. See also <a class="ulink" href="../dsl/org.gradle.api.artifacts.Configuration.html" target="_top"><code class="classname">Configuration</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.RepositoryHandler.html"><code class="literal">RepositoryHandler</code></a></td><td><p>A <code class="literal">RepositoryHandler</code> manages a set of repositories, allowing repositories to be defined and queried.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.DependencyHandler.html"><code class="literal">DependencyHandler</code></a></td><td><p>A <code class="literal">DependencyHandler</code> is used to declare dependencies. Dependencies are grouped into configurations (see <a class="ulink" href="../dsl/org.gradle.api.artifacts.Configuration.html" target="_top"><code class="classname">Configuration</code></a>).</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.ComponentMetadataHandler.html"><code class="literal">ComponentMetadataHandler</code></a></td><td><p>Allows the build to provide rules that modify the metadata of depended-on software components. Component metadata rules are applied in the components section of the dependencies block <a class="ulink" href="../dsl/org.gradle.api.artifacts.dsl.DependencyHandler.html" target="_top"><code class="classname">DependencyHandler</code></a> of a build script. The rules can be defined in two different ways: </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.ArtifactHandler.html"><code class="literal">ArtifactHandler</code></a></td><td><p>This class is for defining artifacts to be published and adding them to configurations. Creating publish artifacts does not mean to create an archive. What is created is a domain object which represents a file to be published and information on how it should be published (e.g. the name). </p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N103D9" class="section-anchor" href="#N103D9"></a>Authentication types</h2></div></div></div><p>Credentials and Authentication types for connecting to repositories:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N103DF"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.artifacts.repositories.AuthenticationSupported.html"><code class="literal">AuthenticationSupported</code></a></td><td><p>An artifact repository which supports username/password authentication.</p></td></tr><tr><td><a class="link" href="org.gradle.api.credentials.Credentials.html"><code class="literal">Credentials</code></a></td><td><p>Base interface for credentials used for different authentication purposes. (e.g authenticated <a class="ulink" href="../dsl/org.gradle.api.artifacts.dsl.RepositoryHandler.html" target="_top"><code class="classname">RepositoryHandler</code></a>)</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.repositories.PasswordCredentials.html"><code class="literal">PasswordCredentials</code></a></td><td><p>A username/password credentials that can be used to login to password-protected remote repository.</p></td></tr><tr><td><a class="link" href="org.gradle.api.credentials.AwsCredentials.html"><code class="literal">AwsCredentials</code></a></td><td><p>Represents credentials used to authenticate with Amazon Web Services.</p></td></tr><tr><td><a class="link" href="org.gradle.api.credentials.HttpHeaderCredentials.html"><code class="literal">HttpHeaderCredentials</code></a></td><td><p>Credentials that can be used to login to a protected server, e.g. a remote repository by using HTTP header. The properties used for creating credentials from a property are <code class="literal">repoAuthHeaderName</code> and <code class="literal">repoAuthHeaderValue</code>, where <code class="literal">repo</code> is the identity of the repository.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.repositories.AuthenticationContainer.html"><code class="literal">AuthenticationContainer</code></a></td><td><p>Container for configuring repository authentication schemes of type <a class="ulink" href="../dsl/org.gradle.authentication.Authentication.html" target="_top"><code class="classname">Authentication</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.authentication.Authentication.html"><code class="literal">Authentication</code></a></td><td><p>Base interface for transport authentication schemes.</p></td></tr><tr><td><a class="link" href="org.gradle.authentication.http.BasicAuthentication.html"><code class="literal">BasicAuthentication</code></a></td><td><p>Authentication scheme for basic access authentication over HTTP. When using this scheme, credentials are sent preemptively.</p></td></tr><tr><td><a class="link" href="org.gradle.authentication.http.HttpHeaderAuthentication.html"><code class="literal">HttpHeaderAuthentication</code></a></td><td><p>Authentication scheme for HTTP header authentication over HTTP.</p></td></tr><tr><td><a class="link" href="org.gradle.authentication.http.DigestAuthentication.html"><code class="literal">DigestAuthentication</code></a></td><td><p>Authentication scheme for digest access authentication over HTTP.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10456" class="section-anchor" href="#N10456"></a>Build Cache types</h2></div></div></div><p>Types used to connect to and configure the build cache:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N1045B"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.caching.configuration.BuildCacheConfiguration.html"><code class="literal">BuildCacheConfiguration</code></a></td><td><p>Configuration for the <a class="ulink" href="https://docs.gradle.org/current/userguide/build_cache.html" target="_top">build cache</a> for an entire Gradle build.</p></td></tr><tr><td><a class="link" href="org.gradle.caching.local.DirectoryBuildCache.html"><code class="literal">DirectoryBuildCache</code></a></td><td><p>Configuration object for the local directory build cache.</p></td></tr><tr><td><a class="link" href="org.gradle.caching.http.HttpBuildCache.html"><code class="literal">HttpBuildCache</code></a></td><td><p>Configuration object for the HTTP build cache. Cache entries are loaded via GET and stored via PUT requests. </p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10484" class="section-anchor" href="#N10484"></a>Input Normalization types</h2></div></div></div><p>Types used to configure input normalization</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10489"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.normalization.InputNormalizationHandler.html"><code class="literal">InputNormalizationHandler</code></a></td><td><p>Used to configure input normalization. Currently, it is only possible to configure runtime classpath normalization.</p></td></tr><tr><td><a class="link" href="org.gradle.normalization.InputNormalization.html"><code class="literal">InputNormalization</code></a></td><td><p>Input normalization configuration. Input normalization is used when Gradle tries to determine if two task inputs are different. Gradle normalizes both inputs and the inputs are considered different if and only if the normalizations are different.</p></td></tr><tr><td><a class="link" href="org.gradle.normalization.RuntimeClasspathNormalization.html"><code class="literal">RuntimeClasspathNormalization</code></a></td><td><p>Configuration of runtime classpath normalization. </p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N104AE" class="section-anchor" href="#N104AE"></a>Help Task types</h2></div></div></div><p>Below are the task types that are available for every Gradle project. Those task types can also be declared and configured directly in the build script. </p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N104B3"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.TaskReportTask.html"><code class="literal">TaskReportTask</code></a></td><td><p>Displays a list of tasks in the project. An instance of this type is used when you execute the <code class="literal">tasks</code> task from the command-line.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.ProjectReportTask.html"><code class="literal">ProjectReportTask</code></a></td><td><p>Displays a list of projects in the build. An instance of this type is used when you execute the <code class="literal">projects</code> task from the command-line.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.DependencyReportTask.html"><code class="literal">DependencyReportTask</code></a></td><td><p>Displays the dependency tree for a project. An instance of this type is used when you execute the <code class="literal">dependencies</code> task from the command-line.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.DependencyInsightReportTask.html"><code class="literal">DependencyInsightReportTask</code></a></td><td><p>Generates a report that attempts to answer questions like: </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.PropertyReportTask.html"><code class="literal">PropertyReportTask</code></a></td><td><p>Displays the properties of a project. An instance of this type is used when you execute the <code class="literal">properties</code> task from the command-line.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.components.ComponentReport.html"><code class="literal">ComponentReport</code></a></td><td><p>Displays some details about the software components produced by the project.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.dependents.DependentComponentsReport.html"><code class="literal">DependentComponentsReport</code></a></td><td><p>Displays dependent components.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.model.ModelReport.html"><code class="literal">ModelReport</code></a></td><td><p>Displays some details about the configuration model of the project. An instance of this type is used when you execute the <code class="literal">model</code> task from the command-line.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.OutgoingVariantsReportTask.html"><code class="literal">OutgoingVariantsReportTask</code></a></td><td><p>A task which reports the outgoing variants of a project on the command line. This is useful for listing what a project produces in terms of variants and what artifacts are attached to each variant. Variants, in this context, must be understood as "things produced by a project which can safely be consumed by another project".</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.ResolvableConfigurationsReportTask.html"><code class="literal">ResolvableConfigurationsReportTask</code></a></td><td><p>A task which reports the configurations of a project which can be resolved on the command line. This is useful for determining which attributes are associated with the resolvable configurations being used to resolve a project's dependencies. The output can help predict which variant of each dependency will be resolved.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10526" class="section-anchor" href="#N10526"></a>Task types</h2></div></div></div><p>Listed below are the various task types which are available for use in your build script:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N1052B"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.plugins.antlr.AntlrTask.html"><code class="literal">AntlrTask</code></a></td><td><p>Generates parsers from Antlr grammars.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.diagnostics.BuildEnvironmentReportTask.html"><code class="literal">BuildEnvironmentReportTask</code></a></td><td><p>Provides information about the build environment for the project that the task is associated with. </p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.quality.Checkstyle.html"><code class="literal">Checkstyle</code></a></td><td><p>Runs Checkstyle against some source files.</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.quality.CodeNarc.html"><code class="literal">CodeNarc</code></a></td><td><p>Runs CodeNarc against some source files.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.Copy.html"><code class="literal">Copy</code></a></td><td><p>Copies files into a destination directory. This task can also rename and filter files as it copies. The task implements <a class="ulink" href="../javadoc/org/gradle/api/file/CopySpec.html" target="_top"><code class="classname">CopySpec</code></a> for specifying what to copy. </p></td></tr><tr><td><a class="link" href="org.gradle.jvm.application.tasks.CreateStartScripts.html"><code class="literal">CreateStartScripts</code></a></td><td><p>Creates start scripts for launching JVM applications. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.Delete.html"><code class="literal">Delete</code></a></td><td><p>Deletes files or directories. Example:</p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ear.Ear.html"><code class="literal">Ear</code></a></td><td><p>Assembles an EAR archive.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.Exec.html"><code class="literal">Exec</code></a></td><td><p>Executes a command line process. Example: </p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.tasks.GenerateIvyDescriptor.html"><code class="literal">GenerateIvyDescriptor</code></a></td><td><p>Generates an Ivy XML Module Descriptor file.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.tasks.GenerateMavenPom.html"><code class="literal">GenerateMavenPom</code></a></td><td><p>Generates a Maven module descriptor (POM) file.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.GenerateBuildDashboard.html"><code class="literal">GenerateBuildDashboard</code></a></td><td><p>Generates build dashboard report.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.GradleBuild.html"><code class="literal">GradleBuild</code></a></td><td><p>Executes a Gradle build.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.compile.GroovyCompile.html"><code class="literal">GroovyCompile</code></a></td><td><p>Compiles Groovy source files, and optionally, Java source files.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.javadoc.Groovydoc.html"><code class="literal">Groovydoc</code></a></td><td><p>Generates HTML API documentation for Groovy source, and optionally, Java source. </p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.dependencies.HtmlDependencyReportTask.html"><code class="literal">HtmlDependencyReportTask</code></a></td><td><p>Generates an HTML dependency report. This report combines the features of the ASCII dependency report and those of the ASCII dependency insight report. For a given project, it generates a tree of the dependencies of every configuration, and each dependency can be clicked to show the insight of this dependency. </p></td></tr><tr><td><a class="link" href="org.gradle.testing.jacoco.tasks.JacocoReport.html"><code class="literal">JacocoReport</code></a></td><td><p>Task to generate HTML, Xml and CSV reports of Jacoco coverage data.</p></td></tr><tr><td><a class="link" href="org.gradle.testing.jacoco.tasks.JacocoCoverageVerification.html"><code class="literal">JacocoCoverageVerification</code></a></td><td><p>Task for verifying code coverage metrics. Fails the task if violations are detected based on specified rules. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.bundling.Jar.html"><code class="literal">Jar</code></a></td><td><p>Assembles a JAR archive.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.compile.JavaCompile.html"><code class="literal">JavaCompile</code></a></td><td><p>Compiles Java source files. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.javadoc.Javadoc.html"><code class="literal">Javadoc</code></a></td><td><p>Generates HTML API documentation for Java classes.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.JavaExec.html"><code class="literal">JavaExec</code></a></td><td><p>Executes a Java application in a child process. </p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.quality.Pmd.html"><code class="literal">Pmd</code></a></td><td><p>Runs a set of static code analysis rules on Java source code files and generates a report of problems found.</p></td></tr><tr><td><a class="link" href="org.gradle.language.jvm.tasks.ProcessResources.html"><code class="literal">ProcessResources</code></a></td><td><p>Copies resources from their source to their target directory, potentially processing them. Makes sure no stale resources remain in the target directory.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.ivy.tasks.PublishToIvyRepository.html"><code class="literal">PublishToIvyRepository</code></a></td><td><p>Publishes an IvyPublication to an IvyArtifactRepository.</p></td></tr><tr><td><a class="link" href="org.gradle.api.publish.maven.tasks.PublishToMavenRepository.html"><code class="literal">PublishToMavenRepository</code></a></td><td><p>Publishes a <a class="ulink" href="../dsl/org.gradle.api.publish.maven.MavenPublication.html" target="_top"><code class="classname">MavenPublication</code></a> to a <a class="ulink" href="../dsl/org.gradle.api.artifacts.repositories.MavenArtifactRepository.html" target="_top"><code class="classname">MavenArtifactRepository</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.scala.ScalaCompile.html"><code class="literal">ScalaCompile</code></a></td><td><p>Compiles Scala source files, and optionally, Java source files.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.scala.ScalaDoc.html"><code class="literal">ScalaDoc</code></a></td><td><p>Generates HTML API documentation for Scala source files.</p></td></tr><tr><td><a class="link" href="org.gradle.buildconfiguration.tasks.UpdateDaemonJvm.html"><code class="literal">UpdateDaemonJvm</code></a></td><td><p>Generates or updates the Gradle Daemon JVM criteria. This controls the version of the JVM required to run the Gradle Daemon.</p></td></tr><tr><td><a class="link" href="org.gradle.buildinit.tasks.InitBuild.html"><code class="literal">InitBuild</code></a></td><td><p>Generates a Gradle project structure.</p></td></tr><tr><td><a class="link" href="org.gradle.plugins.signing.Sign.html"><code class="literal">Sign</code></a></td><td><p>A task for creating digital signature files for one or more; tasks, files, publishable artifacts or configurations. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.Sync.html"><code class="literal">Sync</code></a></td><td><p>Synchronizes the contents of a destination directory with some source directories and files. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.bundling.Tar.html"><code class="literal">Tar</code></a></td><td><p>Assembles a TAR archive.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.testing.AbstractTestTask.html"><code class="literal">AbstractTestTask</code></a></td><td><p>Abstract class for all test tasks. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.testing.Test.html"><code class="literal">Test</code></a></td><td><p>Executes JUnit (3.8.x, 4.x or 5.x) or TestNG tests. Test are always run in (one or more) separate JVMs. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.testing.TestReport.html"><code class="literal">TestReport</code></a></td><td><p>Generates an HTML test report from the results of one or more <a class="ulink" href="../dsl/org.gradle.api.tasks.testing.Test.html" target="_top"><code class="classname">Test</code></a> tasks.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.bundling.War.html"><code class="literal">War</code></a></td><td><p>Assembles a WAR archive.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.wrapper.Wrapper.html"><code class="literal">Wrapper</code></a></td><td><p>Generates scripts (for *nix and windows) which allow you to build your project with Gradle, without having to install Gradle. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.WriteProperties.html"><code class="literal">WriteProperties</code></a></td><td><p>Writes a <a class="ulink" href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html" target="_top"><code class="classname">Properties</code></a> in a way that the results can be expected to be reproducible. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.bundling.Zip.html"><code class="literal">Zip</code></a></td><td><p>Assembles a ZIP archive. The default is to compress the contents of the zip.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N106B6" class="section-anchor" href="#N106B6"></a>Test types</h2></div></div></div><p>Listed below are the tasks and configurable objects related to modeled Test Suites:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N106BB"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.testing.base.TestingExtension.html"><code class="literal">TestingExtension</code></a></td><td><p>This DSL element exists to contain a collection of <a class="ulink" href="../dsl/org.gradle.testing.base.TestSuite.html" target="_top"><code class="classname">TestSuite</code></a>s.</p></td></tr><tr><td><a class="link" href="org.gradle.testing.base.TestSuite.html"><code class="literal">TestSuite</code></a></td><td><p>Base test suite component. A test suite is a collection of tests.</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.jvm.JvmTestSuite.html"><code class="literal">JvmTestSuite</code></a></td><td><p>A test suite is a collection of JVM-based tests. </p></td></tr><tr><td><a class="link" href="org.gradle.testing.base.TestSuiteTarget.html"><code class="literal">TestSuiteTarget</code></a></td><td><p>Base test suite target. A test suite target is a collection of tests that run in a particular context (operating system, Java runtime, etc).</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.jvm.JvmTestSuiteTarget.html"><code class="literal">JvmTestSuiteTarget</code></a></td><td><p>Defines the target environment against which a <a class="ulink" href="../dsl/org.gradle.api.plugins.jvm.JvmTestSuite.html" target="_top"><code class="classname">JvmTestSuite</code></a> will be run.</p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.testing.Test.html"><code class="literal">Test</code></a></td><td><p>Executes JUnit (3.8.x, 4.x or 5.x) or TestNG tests. Test are always run in (one or more) separate JVMs. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.Dependencies.html"><code class="literal">Dependencies</code></a></td><td><p>Universal APIs that are available for all <code class="literal">dependencies</code> blocks.</p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.dsl.GradleDependencies.html"><code class="literal">GradleDependencies</code></a></td><td><p>Dependency APIs available for <code class="literal">dependencies</code> blocks that can build software that relies on Gradle APIs.</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.jvm.TestFixturesDependencyModifiers.html"><code class="literal">TestFixturesDependencyModifiers</code></a></td><td><p>Dependency modifier APIs that can find test fixtures in other modules for <code class="literal">dependencies</code> blocks.</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.jvm.PlatformDependencyModifiers.html"><code class="literal">PlatformDependencyModifiers</code></a></td><td><p>Dependency modifier APIs that can find platform and enforced platforms in other modules for <code class="literal">dependencies</code> blocks.</p></td></tr><tr><td><a class="link" href="org.gradle.api.plugins.jvm.JvmComponentDependencies.html"><code class="literal">JvmComponentDependencies</code></a></td><td><p>This DSL element is used to add dependencies to a component, for instance a <a class="ulink" href="../dsl/org.gradle.testing.base.TestSuite.html" target="_top"><code class="classname">TestSuite</code></a> </p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10743" class="section-anchor" href="#N10743"></a>Reporting types</h2></div></div></div><p>Listed below are some of the types which are used when generating reports:</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10748"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.reporting.CustomizableHtmlReport.html"><code class="literal">CustomizableHtmlReport</code></a></td><td><p>A HTML Report whose generation can be customized with a XSLT stylesheet.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.SingleFileReport.html"><code class="literal">SingleFileReport</code></a></td><td><p>A report that is a single file.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.DirectoryReport.html"><code class="literal">DirectoryReport</code></a></td><td><p>A directory based report to be created.</p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.Report.html"><code class="literal">Report</code></a></td><td><p>A file based report to be created. </p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.Reporting.html"><code class="literal">Reporting</code></a></td><td><p>An object that provides reporting options. </p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.ReportContainer.html"><code class="literal">ReportContainer</code></a></td><td><p>A container of <a class="ulink" href="../dsl/org.gradle.api.reporting.Report.html" target="_top"><code class="classname">Report</code></a> objects, that represent potential reports. </p></td></tr><tr><td><a class="link" href="org.gradle.api.reporting.ReportingExtension.html"><code class="literal">ReportingExtension</code></a></td><td><p>A project extension named "reporting" that provides basic reporting settings and utilities. </p></td></tr><tr><td><a class="link" href="org.gradle.api.tasks.testing.AggregateTestReport.html"><code class="literal">AggregateTestReport</code></a></td><td><p>A container for the inputs of an aggregated test report.</p></td></tr><tr><td><a class="link" href="org.gradle.testing.jacoco.plugins.JacocoCoverageReport.html"><code class="literal">JacocoCoverageReport</code></a></td><td><p>A container for the inputs of an aggregated JaCoCo code coverage report.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N107A8" class="section-anchor" href="#N107A8"></a>Eclipse/IDEA model types</h2></div></div></div><p>Used to configure Eclipse or IDEA plugins</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N107AD"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseModel.html"><code class="literal">EclipseModel</code></a></td><td><p>DSL-friendly model of the Eclipse project information. First point of entry for customizing Eclipse project generation. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseProject.html"><code class="literal">EclipseProject</code></a></td><td><p>Enables fine-tuning project details (.project file) of the Eclipse plugin </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseClasspath.html"><code class="literal">EclipseClasspath</code></a></td><td><p>The build path settings for the generated Eclipse project. Used by the <a class="ulink" href="../dsl/org.gradle.plugins.ide.eclipse.GenerateEclipseClasspath.html" target="_top"><code class="classname">GenerateEclipseClasspath</code></a> task to generate an Eclipse .classpath file. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseJdt.html"><code class="literal">EclipseJdt</code></a></td><td><p>Enables fine-tuning jdt details of the Eclipse plugin </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseWtp.html"><code class="literal">EclipseWtp</code></a></td><td><p>Enables fine-tuning wtp/wst details of the Eclipse plugin </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseWtpComponent.html"><code class="literal">EclipseWtpComponent</code></a></td><td><p>Enables fine-tuning wtp component details of the Eclipse plugin </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.model.EclipseWtpFacet.html"><code class="literal">EclipseWtpFacet</code></a></td><td><p>Enables fine-tuning wtp facet details of the Eclipse plugin </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaModel.html"><code class="literal">IdeaModel</code></a></td><td><p>DSL-friendly model of the IDEA project information. First point of entry when it comes to customizing the IDEA generation. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaProject.html"><code class="literal">IdeaProject</code></a></td><td><p>Enables fine-tuning project details (*.ipr file) of the IDEA plugin. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaModule.html"><code class="literal">IdeaModule</code></a></td><td><p>Enables fine-tuning module details (*.iml file) of the IDEA plugin. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.model.IdeaWorkspace.html"><code class="literal">IdeaWorkspace</code></a></td><td><p>Enables fine-tuning workspace details (*.iws file) of the IDEA plugin. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.api.XmlFileContentMerger.html"><code class="literal">XmlFileContentMerger</code></a></td><td><p>Models the generation/parsing/merging capabilities. Adds XML-related hooks. </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.api.FileContentMerger.html"><code class="literal">FileContentMerger</code></a></td><td><p>Models the generation/parsing/merging capabilities. </p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10831" class="section-anchor" href="#N10831"></a>Eclipse/IDEA task types</h2></div></div></div><p>Tasks contributed by IDE plugins. To configure IDE plugins please use IDE model types.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10836"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseProject.html"><code class="literal">GenerateEclipseProject</code></a></td><td><p>Generates an Eclipse <code class="literal">.project</code> file. If you want to fine tune the eclipse configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseClasspath.html"><code class="literal">GenerateEclipseClasspath</code></a></td><td><p>Generates an Eclipse <code class="literal">.classpath</code> file. If you want to fine tune the eclipse configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseJdt.html"><code class="literal">GenerateEclipseJdt</code></a></td><td><p>Generates the Eclipse JDT configuration file. If you want to fine tune the eclipse configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseWtpComponent.html"><code class="literal">GenerateEclipseWtpComponent</code></a></td><td><p>Generates the org.eclipse.wst.common.component settings file for Eclipse WTP. If you want to fine tune the eclipse configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.eclipse.GenerateEclipseWtpFacet.html"><code class="literal">GenerateEclipseWtpFacet</code></a></td><td><p>Generates the org.eclipse.wst.common.project.facet.core settings file for Eclipse WTP. If you want to fine tune the eclipse configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.GenerateIdeaModule.html"><code class="literal">GenerateIdeaModule</code></a></td><td><p>Generates an IDEA module file. If you want to fine tune the idea configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.GenerateIdeaProject.html"><code class="literal">GenerateIdeaProject</code></a></td><td><p>Generates an IDEA project file for root project *only*. If you want to fine tune the idea configuration </p></td></tr><tr><td><a class="link" href="org.gradle.plugins.ide.idea.GenerateIdeaWorkspace.html"><code class="literal">GenerateIdeaWorkspace</code></a></td><td><p>Generates an IDEA workspace file *only* for root project. There's little you can configure about workspace generation at the moment.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N1088E" class="section-anchor" href="#N1088E"></a>Xcode task types</h2></div></div></div><p>Tasks contributed by Xcode IDE plugins. To configure IDE plugins please use IDE model types.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10893"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.ide.xcode.tasks.GenerateSchemeFileTask.html"><code class="literal">GenerateSchemeFileTask</code></a></td><td><p>Task for generating a Xcode scheme file (e.g. <code class="literal">Foo.xcodeproj/xcshareddata/xcschemes/Foo.xcscheme</code>). An Xcode scheme defines a collection of targets to build, a configuration to use when building, and a collection of tests to execute. </p></td></tr><tr><td><a class="link" href="org.gradle.ide.xcode.tasks.GenerateWorkspaceSettingsFileTask.html"><code class="literal">GenerateWorkspaceSettingsFileTask</code></a></td><td><p>Task for generating a Xcode workspace settings file (e.g. <code class="literal">Foo.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings</code>). </p></td></tr><tr><td><a class="link" href="org.gradle.ide.xcode.tasks.GenerateXcodeProjectFileTask.html"><code class="literal">GenerateXcodeProjectFileTask</code></a></td><td><p>Task for generating a Xcode project file (e.g. <code class="literal">Foo.xcodeproj/project.pbxproj</code>). A project contains all the elements used to build your products and maintains the relationships between those elements. It contains one or more targets, which specify how to build products. A project defines default build settings for all the targets in the project (each target can also specify its own build settings, which override the project build settings).</p></td></tr><tr><td><a class="link" href="org.gradle.ide.xcode.tasks.GenerateXcodeWorkspaceFileTask.html"><code class="literal">GenerateXcodeWorkspaceFileTask</code></a></td><td><p>Task for generating a Xcode workspace file (e.g. <code class="literal">Foo.xcworkspace/contents.xcworkspacedata</code>). A workspace can contain any number of Xcode projects.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N108CD" class="section-anchor" href="#N108CD"></a>Visual Studio task types</h2></div></div></div><p>Tasks contributed by Visual Studio IDE plugins. To configure IDE plugins please use IDE model types.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N108D2"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.ide.visualstudio.tasks.GenerateSolutionFileTask.html"><code class="literal">GenerateSolutionFileTask</code></a></td><td><p>Task for generating a Visual Studio solution file (e.g. <code class="literal">foo.sln</code>).</p></td></tr><tr><td><a class="link" href="org.gradle.ide.visualstudio.tasks.GenerateProjectFileTask.html"><code class="literal">GenerateProjectFileTask</code></a></td><td><p>Task for generating a Visual Studio project file (e.g. <code class="literal">foo.vcxproj</code>).</p></td></tr><tr><td><a class="link" href="org.gradle.ide.visualstudio.tasks.GenerateFiltersFileTask.html"><code class="literal">GenerateFiltersFileTask</code></a></td><td><p>Task for generating a Visual Studio filters file (e.g. <code class="literal">foo.vcxproj.filters</code>).</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10900" class="section-anchor" href="#N10900"></a>Artifact transform types</h2></div></div></div><p>Used to define artifact transforms.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10905"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.api.artifacts.transform.TransformAction.html"><code class="literal">TransformAction</code></a></td><td><p>Interface for artifact transform actions. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.transform.TransformOutputs.html"><code class="literal">TransformOutputs</code></a></td><td><p>The outputs of the artifact transform. </p></td></tr><tr><td><a class="link" href="org.gradle.api.artifacts.transform.TransformSpec.html"><code class="literal">TransformSpec</code></a></td><td><p>Base configuration for artifact transform registrations.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N1092A" class="section-anchor" href="#N1092A"></a>Native tool chains model types</h2></div></div></div><p>Used to configure tool chains for building C++ and Swift components.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N1092F"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.nativeplatform.toolchain.Gcc.html"><code class="literal">Gcc</code></a></td><td><p>The <a class="ulink" href="http://gcc.gnu.org/" target="_top">GNU GCC</a> tool chain.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.toolchain.Clang.html"><code class="literal">Clang</code></a></td><td><p>The <a class="ulink" href="http://clang.llvm.org" target="_top">Clang</a> tool chain.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.toolchain.VisualCpp.html"><code class="literal">VisualCpp</code></a></td><td><p>The Visual C++ tool chain.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.toolchain.Swiftc.html"><code class="literal">Swiftc</code></a></td><td><p>The <a class="ulink" href="https://swift.org/" target="_top">Swift Compiler</a> tool chain.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10969" class="section-anchor" href="#N10969"></a>Native software model types</h2></div></div></div><p>Used to configure software components developed with native code.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N1096F"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.nativeplatform.PrebuiltLibrary.html"><code class="literal">PrebuiltLibrary</code></a></td><td><p>A library component that is not built by gradle.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.PrebuiltSharedLibraryBinary.html"><code class="literal">PrebuiltSharedLibraryBinary</code></a></td><td><p>A shared library that exists at a known location on the filesystem.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.PrebuiltStaticLibraryBinary.html"><code class="literal">PrebuiltStaticLibraryBinary</code></a></td><td><p>A static library that exists at a known location on the filesystem.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeComponentSpec.html"><code class="literal">NativeComponentSpec</code></a></td><td><p>Definition of a software component that is to be built by Gradle to run a on JVM platform.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeExecutableSpec.html"><code class="literal">NativeExecutableSpec</code></a></td><td><p>Definition of a native executable component that is to be built by Gradle.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeLibrarySpec.html"><code class="literal">NativeLibrarySpec</code></a></td><td><p>Definition of a native library component that is to be built by Gradle.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.NativeTestSuiteSpec.html"><code class="literal">NativeTestSuiteSpec</code></a></td><td><p>A component representing a suite of tests that will be executed together.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.cunit.CUnitTestSuiteSpec.html"><code class="literal">CUnitTestSuiteSpec</code></a></td><td><p>Test suite of CUnit tests.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.googletest.GoogleTestTestSuiteSpec.html"><code class="literal">GoogleTestTestSuiteSpec</code></a></td><td><p>Test suite of Google Test tests.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeBinarySpec.html"><code class="literal">NativeBinarySpec</code></a></td><td><p>Represents a binary artifact that is the result of building a native component.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeExecutableBinarySpec.html"><code class="literal">NativeExecutableBinarySpec</code></a></td><td><p>An binary built by Gradle for a native application.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeLibraryBinarySpec.html"><code class="literal">NativeLibraryBinarySpec</code></a></td><td><p>Represents a binary artifact that is the result of building a native library component.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.SharedLibraryBinarySpec.html"><code class="literal">SharedLibraryBinarySpec</code></a></td><td><p>A shared library binary built by Gradle for a native library.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.StaticLibraryBinarySpec.html"><code class="literal">StaticLibraryBinarySpec</code></a></td><td><p>A static library binary built by Gradle for a native library.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.NativeTestSuiteBinarySpec.html"><code class="literal">NativeTestSuiteBinarySpec</code></a></td><td><p>An executable which runs a suite of tests.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.cunit.CUnitTestSuiteBinarySpec.html"><code class="literal">CUnitTestSuiteBinarySpec</code></a></td><td><p>An executable which run a CUnit test suite.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.googletest.GoogleTestTestSuiteBinarySpec.html"><code class="literal">GoogleTestTestSuiteBinarySpec</code></a></td><td><p>An executable which run a Google Test test suite.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.platform.NativePlatform.html"><code class="literal">NativePlatform</code></a></td><td><p>A target platform for building native binaries. Each target platform is given a name, and may optionally be given a specific <a class="ulink" href="../javadoc/org/gradle/nativeplatform/platform/Architecture.html" target="_top"><code class="classname">Architecture</code></a> and/or <a class="ulink" href="../javadoc/org/gradle/nativeplatform/platform/OperatingSystem.html" target="_top"><code class="classname">OperatingSystem</code></a> to target. </p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.BuildType.html"><code class="literal">BuildType</code></a></td><td><p>Specifies a build-type for a native binary. Common build types are 'debug' and 'release', but others may be defined.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.Flavor.html"><code class="literal">Flavor</code></a></td><td><p>Defines a custom variant that differentiate a <a class="ulink" href="../dsl/org.gradle.nativeplatform.NativeBinary.html" target="_top"><code class="classname">NativeBinary</code></a>.</p></td></tr><tr><td><a class="link" href="org.gradle.language.assembler.AssemblerSourceSet.html"><code class="literal">AssemblerSourceSet</code></a></td><td><p>A set of assembly language sources. </p></td></tr><tr><td><a class="link" href="org.gradle.language.c.CSourceSet.html"><code class="literal">CSourceSet</code></a></td><td><p>A set of C source files. </p></td></tr><tr><td><a class="link" href="org.gradle.language.cpp.CppSourceSet.html"><code class="literal">CppSourceSet</code></a></td><td><p>A set of C++ source files. </p></td></tr><tr><td><a class="link" href="org.gradle.language.objectivec.ObjectiveCSourceSet.html"><code class="literal">ObjectiveCSourceSet</code></a></td><td><p>A set of Objective-C source files. </p></td></tr><tr><td><a class="link" href="org.gradle.language.objectivecpp.ObjectiveCppSourceSet.html"><code class="literal">ObjectiveCppSourceSet</code></a></td><td><p>A set of Objective-C++ source files. </p></td></tr><tr><td><a class="link" href="org.gradle.language.rc.WindowsResourceSet.html"><code class="literal">WindowsResourceSet</code></a></td><td><p>A set of Windows Resource definition files. </p></td></tr><tr><td><a class="link" href="org.gradle.ide.visualstudio.VisualStudioProject.html"><code class="literal">VisualStudioProject</code></a></td><td><p>A visual studio project, created from one or more native binaries. </p></td></tr><tr><td><a class="link" href="org.gradle.ide.visualstudio.VisualStudioSolution.html"><code class="literal">VisualStudioSolution</code></a></td><td><p>A visual studio solution, representing one or more native binaries in a build. </p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeExecutable.html"><code class="literal">NativeExecutable</code></a></td><td><p>An executable native component that is built by Gradle.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeLibrary.html"><code class="literal">NativeLibrary</code></a></td><td><p>A library component that is built by a gradle project.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeBinary.html"><code class="literal">NativeBinary</code></a></td><td><p>Represents a particular binary artifact.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.NativeExecutableBinary.html"><code class="literal">NativeExecutableBinary</code></a></td><td><p>A binary artifact for a <a class="ulink" href="../dsl/org.gradle.nativeplatform.NativeExecutable.html" target="_top"><code class="classname">NativeExecutable</code></a>, targeted at a particular platform with specific configuration.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.SharedLibraryBinary.html"><code class="literal">SharedLibraryBinary</code></a></td><td><p>A <a class="ulink" href="../dsl/org.gradle.nativeplatform.NativeLibrary.html" target="_top"><code class="classname">NativeLibrary</code></a> that has been compiled and linked as a shared library.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.StaticLibraryBinary.html"><code class="literal">StaticLibraryBinary</code></a></td><td><p>A <a class="ulink" href="../dsl/org.gradle.nativeplatform.NativeLibrary.html" target="_top"><code class="classname">NativeLibrary</code></a> that has been compiled and archived into a static library.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10AC9" class="section-anchor" href="#N10AC9"></a>C++ component model types</h2></div></div></div><p>Used to configure C++ components.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10ACE"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.language.cpp.CppApplication.html"><code class="literal">CppApplication</code></a></td><td><p>Configuration for a C++ application, defining the source files that make up the application plus other settings. </p></td></tr><tr><td><a class="link" href="org.gradle.language.cpp.CppLibrary.html"><code class="literal">CppLibrary</code></a></td><td><p>Configuration for a C++ library, defining the source files and header directories that make up the library plus other settings. </p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.cpp.CppTestSuite.html"><code class="literal">CppTestSuite</code></a></td><td><p>A C++ test suite.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10AF3" class="section-anchor" href="#N10AF3"></a>Swift component model types</h2></div></div></div><p>Used to configure Swift components.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10AF8"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.language.swift.SwiftApplication.html"><code class="literal">SwiftApplication</code></a></td><td><p>Configuration for a Swift application, defining the source files that make up the application plus other settings. </p></td></tr><tr><td><a class="link" href="org.gradle.language.swift.SwiftLibrary.html"><code class="literal">SwiftLibrary</code></a></td><td><p>Configuration for a Swift library, defining the source files that make up the library plus other settings. </p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.xctest.SwiftXCTestSuite.html"><code class="literal">SwiftXCTestSuite</code></a></td><td><p>A XCTest suite, implemented in Swift.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10B1D" class="section-anchor" href="#N10B1D"></a>Native binary task types</h2></div></div></div><p>Tasks used to build native binaries.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10B22"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.language.cpp.tasks.CppCompile.html"><code class="literal">CppCompile</code></a></td><td><p>Compiles C++ source files into object files.</p></td></tr><tr><td><a class="link" href="org.gradle.language.swift.tasks.SwiftCompile.html"><code class="literal">SwiftCompile</code></a></td><td><p>Compiles Swift source files into object files.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.tasks.LinkExecutable.html"><code class="literal">LinkExecutable</code></a></td><td><p>Links a binary executable from object files and libraries.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.tasks.LinkSharedLibrary.html"><code class="literal">LinkSharedLibrary</code></a></td><td><p>Links a binary shared library from object files and imported libraries.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.tasks.CreateStaticLibrary.html"><code class="literal">CreateStaticLibrary</code></a></td><td><p>Assembles a static library from object files.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.tasks.LinkMachOBundle.html"><code class="literal">LinkMachOBundle</code></a></td><td><p>Links a binary bundle from object files and imported libraries.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.tasks.InstallExecutable.html"><code class="literal">InstallExecutable</code></a></td><td><p>Installs an executable with it's dependent libraries so it can be easily executed.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.xctest.tasks.InstallXCTestBundle.html"><code class="literal">InstallXCTestBundle</code></a></td><td><p>Creates a XCTest bundle with a run script so it can be easily executed.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.tasks.RunTestExecutable.html"><code class="literal">RunTestExecutable</code></a></td><td><p>Runs a compiled and installed test executable.</p></td></tr><tr><td><a class="link" href="org.gradle.nativeplatform.test.xctest.tasks.XCTest.html"><code class="literal">XCTest</code></a></td><td><p>Executes XCTest tests. Test are always run in a single execution.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a xmlns:xslthl="http://xslthl.sf.net" name="N10B86" class="section-anchor" href="#N10B86"></a>Native binary task types</h2></div></div></div><p>Tasks used to build native binaries.</p><div xmlns:xslthl="http://xslthl.sf.net" class="table"><div class="table-contents"><table role="dslTypes" id="N10B8C"><thead><tr><td>Type</td><td>Description</td></tr></thead><tr><td><a class="link" href="org.gradle.language.c.tasks.CCompile.html"><code class="literal">CCompile</code></a></td><td><p>Compiles C source files into object files.</p></td></tr><tr><td><a class="link" href="org.gradle.language.assembler.tasks.Assemble.html"><code class="literal">Assemble</code></a></td><td><p>Translates Assembly language source files into object files.</p></td></tr><tr><td><a class="link" href="org.gradle.language.objectivec.tasks.ObjectiveCCompile.html"><code class="literal">ObjectiveCCompile</code></a></td><td><p>Compiles Objective-C source files into object files.</p></td></tr><tr><td><a class="link" href="org.gradle.language.objectivecpp.tasks.ObjectiveCppCompile.html"><code class="literal">ObjectiveCppCompile</code></a></td><td><p>Compiles Objective-C++ source files into object files.</p></td></tr><tr><td><a class="link" href="org.gradle.language.rc.tasks.WindowsResourceCompile.html"><code class="literal">WindowsResourceCompile</code></a></td><td><p>Compiles Windows Resource scripts into .res files.</p></td></tr></table></div></div></div></div></div><footer xmlns:xslthl="http://xslthl.sf.net" itemtype="https://schema.org/WPFooter" itemscope="itemscope" class="site-layout__footer site-footer"><nav itemtype="https://schema.org/SiteNavigationElement" class="site-footer__navigation"><section class="site-footer__links"><div class="site-footer__link-group"><header><strong>Docs</strong></header><ul class="site-footer__links-list"><li itemprop="name"><a itemprop="url" href="/userguide/userguide.html">User Manual</a></li><li itemprop="name"><a itemprop="url" href="/dsl/">DSL Reference</a></li><li itemprop="name"><a itemprop="url" href="/release-notes.html">Release Notes</a></li><li itemprop="name"><a itemprop="url" href="/javadoc/">Javadoc</a></li></ul></div><div class="site-footer__link-group"><header><strong>News</strong></header><ul class="site-footer__links-list"><li itemprop="name"><a itemprop="url" href="https://blog.gradle.org/">Blog</a></li><li itemprop="name"><a itemprop="url" href="https://newsletter.gradle.org/">Newsletter</a></li><li itemprop="name"><a itemprop="url" href="https://twitter.com/gradle">Twitter</a></li></ul></div><div class="site-footer__link-group"><header><strong>Products</strong></header><ul class="site-footer__links-list"><li itemprop="name"><a itemprop="url" href="https://gradle.com/build-scans">Build Scan™</a></li><li itemprop="name"><a itemprop="url" href="https://gradle.com/build-cache">Build Cache</a></li><li itemprop="name"><a itemprop="url" href="https://gradle.com/enterprise/resources">Develocity Docs</a></li></ul></div><div class="site-footer__link-group"><header><strong>Get Help</strong></header><ul class="site-footer__links-list"><li itemprop="name"><a itemprop="url" href="https://discuss.gradle.org/c/help-discuss">Forums</a></li><li itemprop="name"><a itemprop="url" href="https://github.com/gradle/">GitHub</a></li><li itemprop="name"><a itemprop="url" href="https://gradle.org/training/">Training</a></li><li itemprop="name"><a itemprop="url" href="https://gradle.org/services/">Services</a></li></ul></div></section><section id="newsletter-form-container" class="site-footer__subscribe-newsletter"><header class="newsletter-form__header"><h5>Stay <code>UP-TO-DATE</code> on new features and news</h5></header><p class="disclaimer">By entering your email, you agree to our <a href="https://gradle.org/terms/">Terms</a> and <a href="https://gradle.org/privacy/">Privacy Policy</a>, including receipt of emails. You can unsubscribe at any time.</p><div class="newsletter-form__container"><form method="post" action="https://go.gradle.com/l/68052/2018-09-07/bk6wml" class="newsletter-form" id="newsletter-form"><input required="" maxlength="255" pattern="[^@\s]+@[^@\s]+\.[^@\s]+" placeholder="name@email.com" type="email" name="email" class="email" id="email"><button type="submit" class="submit" id="submit">Subscribe</button></form></div></section></nav></footer><aside class="secondary-navigation"></aside></div></main><div class="site-footer-secondary"><div class="site-footer-secondary__contents"><div class="site-footer__copy">© <a href="https://gradle.com">Gradle Inc. </a><time>2021</time> All rights reserved. </div><div class="site-footer__logo"><a href="/"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 90 66.06"><defs><style>.cls-1 { fill: #02303a; }</style></defs><title>gradle</title><path d="M85.11,4.18a14.27,14.27,0,0,0-19.83-.34,1.38,1.38,0,0,0,0,2L67,7.6a1.36,1.36,0,0,0,1.78.12A8.18,8.18,0,0,1,79.5,20.06C68.17,31.38,53.05-.36,18.73,16a4.65,4.65,0,0,0-2,6.54l5.89,10.17a4.64,4.64,0,0,0,6.3,1.73l.14-.08-.11.08L31.53,33a60.29,60.29,0,0,0,8.22-6.13,1.44,1.44,0,0,1,1.87-.06h0a1.34,1.34,0,0,1,.06,2A61.61,61.61,0,0,1,33,35.34l-.09,0-2.61,1.46a7.34,7.34,0,0,1-3.61.94,7.45,7.45,0,0,1-6.47-3.71l-5.57-9.61C4,32-2.54,46.56,1,65a1.36,1.36,0,0,0,1.33,1.11H8.61A1.36,1.36,0,0,0,10,64.87a9.29,9.29,0,0,1,18.42,0,1.35,1.35,0,0,0,1.34,1.19H35.9a1.36,1.36,0,0,0,1.34-1.19,9.29,9.29,0,0,1,18.42,0A1.36,1.36,0,0,0,57,66.06H63.1a1.36,1.36,0,0,0,1.36-1.34c.14-8.6,2.46-18.48,9.07-23.43C96.43,24.16,90.41,9.48,85.11,4.18ZM61.76,30.05l-4.37-2.19h0a2.74,2.74,0,1,1,4.37,2.2Z" class="cls-1"/></svg></a></div><div class="site-footer-secondary__links"><a href="https://gradle.com/careers">Careers</a> | <a href="https://gradle.org/privacy">Privacy</a> | <a href="https://gradle.org/terms">Terms of Service</a> | <a href="https://gradle.org/contact/">Contact</a></div></div></div></div></body></html>