This file is indexed.

/usr/share/doc/gradle/userguide/pt03.html is in gradle-doc 2.10-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

1
<html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Part&nbsp;III.&nbsp;Writing Gradle build scripts</title><link xmlns:xslthl="http://xslthl.sf.net" type="text/css" rel="stylesheet" href="base.css"><link xmlns:xslthl="http://xslthl.sf.net" type="text/css" rel="stylesheet" href="docs.css"><link xmlns:xslthl="http://xslthl.sf.net" type="text/css" rel="stylesheet" href="userguide.css"><meta content="DocBook XSL Stylesheets V1.79.1" name="generator"><link rel="home" href="userguide.html" title="Gradle User Guide"><link rel="up" href="userguide.html" title="Gradle User Guide"><link rel="prev" href="embedding.html" title="Chapter&nbsp;13.&nbsp;Embedding Gradle"><link rel="next" href="tutorial_using_tasks.html" title="Chapter&nbsp;14.&nbsp;Build Script Basics"></head><body><div class="navheader"><div><div class="navbar"><a xmlns:xslthl="http://xslthl.sf.net" href="embedding.html" title="Chapter&nbsp;13.&nbsp;Embedding Gradle">Previous</a><span>|</span><a xmlns:xslthl="http://xslthl.sf.net" href="userguide.html" title="Gradle User Guide">Contents</a><span>|</span><a xmlns:xslthl="http://xslthl.sf.net" href="tutorial_using_tasks.html" title="Chapter&nbsp;14.&nbsp;Build Script Basics">Next</a></div></div></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a name="N10A7B"></a>Part&nbsp;III.&nbsp;Writing Gradle build scripts</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="tutorial_using_tasks.html">14. Build Script Basics</a></span></dt><dd><dl><dt><span class="section"><a href="tutorial_using_tasks.html#N10A84">14.1. Projects and tasks</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10A9B">14.2. Hello world</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10B01">14.3. A shortcut task definition</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10B18">14.4. Build scripts are code</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#sec:task_dependencies">14.5. Task dependencies</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10B7A">14.6. Dynamic tasks</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10B8F">14.7. Manipulating existing tasks</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#sec:shortcut_notations">14.8. Shortcut notations</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#sec:extra_task_properties">14.9. Extra task properties</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10C05">14.10. Using Ant Tasks</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10C25">14.11. Using methods</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#sec:default_tasks">14.12. Default tasks</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#configure-by-dag">14.13. Configure by DAG</a></span></dt><dt><span class="section"><a href="tutorial_using_tasks.html#N10C92">14.14. Where to next?</a></span></dt></dl></dd><dt><span class="chapter"><a href="build_init_plugin.html">15. Build Init Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="build_init_plugin.html#N10CC7">15.1. Tasks</a></span></dt><dt><span class="section"><a href="build_init_plugin.html#N10D0D">15.2. What to set up</a></span></dt><dt><span class="section"><a href="build_init_plugin.html#N10D30">15.3. Build init types</a></span></dt></dl></dd><dt><span class="chapter"><a href="writing_build_scripts.html">16. Writing Build Scripts</a></span></dt><dd><dl><dt><span class="section"><a href="writing_build_scripts.html#N10DEA">16.1. The Gradle build language</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#sec:project_api">16.2. The Project API</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#N10EF6">16.3. The Script API</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#N10F03">16.4. Declaring variables</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#sec:configuring_arbitrary_objects">16.5. Configuring arbitrary objects</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#N10F69">16.6. Configuring arbitrary objects using an external script</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#groovy-dsl-basics">16.7. Some Groovy basics</a></span></dt><dt><span class="section"><a href="writing_build_scripts.html#script-default-imports">16.8. Default imports</a></span></dt></dl></dd><dt><span class="chapter"><a href="more_about_tasks.html">17. More about Tasks</a></span></dt><dd><dl><dt><span class="section"><a href="more_about_tasks.html#N11032">17.1. Defining tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#N11069">17.2. Locating tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#sec:configuring_tasks">17.3. Configuring tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#sec:adding_dependencies_to_tasks">17.4. Adding dependencies to a task</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#sec:ordering_tasks">17.5. Ordering tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#N1121D">17.6. Adding a description to a task</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#N1122F">17.7. Replacing tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#N1124C">17.8. Skipping tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#sec:up_to_date_checks">17.9. Skipping tasks that are up-to-date</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#N11320">17.10. Task rules</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#N11357">17.11. Finalizer tasks</a></span></dt><dt><span class="section"><a href="more_about_tasks.html#sec:the_idea_behind_gradle_tasks">17.12. Summary</a></span></dt></dl></dd><dt><span class="chapter"><a href="working_with_files.html">18. Working With Files</a></span></dt><dd><dl><dt><span class="section"><a href="working_with_files.html#sec:locating_files">18.1. Locating files</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:file_collections">18.2. File collections</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:file_trees">18.3. File trees</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:archive_contents">18.4. Using the contents of an archive as a file tree</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:specifying_multiple_files">18.5. Specifying a set of input files</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:copying_files">18.6. Copying files</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:sync_task">18.7. Using the <code class="literal">Sync</code> task</a></span></dt><dt><span class="section"><a href="working_with_files.html#sec:archives">18.8. Creating archives</a></span></dt></dl></dd><dt><span class="chapter"><a href="ant.html">19. Using Ant from Gradle</a></span></dt><dd><dl><dt><span class="section"><a href="ant.html#N11781">19.1. Using Ant tasks and types in your build</a></span></dt><dt><span class="section"><a href="ant.html#N11821">19.2. Importing an Ant build</a></span></dt><dt><span class="section"><a href="ant.html#N118A3">19.3. Ant properties and references</a></span></dt><dt><span class="section"><a href="ant.html#N118F7">19.4. API</a></span></dt></dl></dd><dt><span class="chapter"><a href="build_lifecycle.html">20. The Build Lifecycle</a></span></dt><dd><dl><dt><span class="section"><a href="build_lifecycle.html#sec:build_phases">20.1. Build phases</a></span></dt><dt><span class="section"><a href="build_lifecycle.html#sec:settings_file">20.2. Settings file</a></span></dt><dt><span class="section"><a href="build_lifecycle.html#sec:multi_project_builds">20.3. Multi-project builds</a></span></dt><dt><span class="section"><a href="build_lifecycle.html#sec:initialization">20.4. Initialization</a></span></dt><dt><span class="section"><a href="build_lifecycle.html#sec:configuration_and_execution_of_a_single_project_build">20.5. Configuration and execution of a single project build</a></span></dt><dt><span class="section"><a href="build_lifecycle.html#build_lifecycle_events">20.6. Responding to the lifecycle in the build script</a></span></dt></dl></dd><dt><span class="chapter"><a href="wrapper_plugin.html">21. Wrapper Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="wrapper_plugin.html#N11AF8">21.1. Usage</a></span></dt><dt><span class="section"><a href="wrapper_plugin.html#N11B06">21.2. Tasks</a></span></dt></dl></dd><dt><span class="chapter"><a href="logging.html">22. Logging</a></span></dt><dd><dl><dt><span class="section"><a href="logging.html#sec:choosing_a_log_level">22.1. Choosing a log level</a></span></dt><dt><span class="section"><a href="logging.html#sec:sending_your_own_log_messages">22.2. Writing your own log messages</a></span></dt><dt><span class="section"><a href="logging.html#sec:external_tools">22.3. Logging from external tools and libraries</a></span></dt><dt><span class="section"><a href="logging.html#sec:changing_what_gradle_logs">22.4. Changing what Gradle logs</a></span></dt></dl></dd><dt><span class="chapter"><a href="dependency_management.html">23. Dependency Management</a></span></dt><dd><dl><dt><span class="section"><a href="dependency_management.html#sec:Introduction">23.1. Introduction</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:dependency_management_overview">23.2. Dependency Management Best Practices</a></span></dt><dt><span class="section"><a href="dependency_management.html#sub:configurations">23.3. Dependency configurations</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:how_to_declare_your_dependencies">23.4. How to declare your dependencies</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:working_with_dependencies">23.5. Working with dependencies</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:repositories">23.6. Repositories</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:dependency_resolution">23.7. How dependency resolution works</a></span></dt><dt><span class="section"><a href="dependency_management.html#N123FC">23.8. Fine-tuning the dependency resolution process</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:dependency_cache">23.9. The dependency cache</a></span></dt><dt><span class="section"><a href="dependency_management.html#sec:strategies_of_transitive_dependency_management">23.10. Strategies for transitive dependency management</a></span></dt></dl></dd><dt><span class="chapter"><a href="multi_project_builds.html">24. Multi-project Builds</a></span></dt><dd><dl><dt><span class="section"><a href="multi_project_builds.html#sec:cross_project_configuration">24.1. Cross project configuration</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:subproject_configuration">24.2. Subproject configuration</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:execution_rules_for_multi_project_builds">24.3. Execution rules for multi-project builds</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:running_partial_build_from_the_root">24.4. Running tasks by their absolute path</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:project_and_task_paths">24.5. Project and task paths</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:dependencies_which_dependencies">24.6. Dependencies - Which dependencies?</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:project_jar_dependencies">24.7. Project lib dependencies</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:parallel_execution">24.8. Parallel project execution</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:decoupled_projects">24.9. Decoupled Projects</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:multiproject_build_and_test">24.10. Multi-Project Building and Testing</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#N12D09">24.11. Multi Project and buildSrc</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#sec:property_and_method_inheritance">24.12. Property and method inheritance</a></span></dt><dt><span class="section"><a href="multi_project_builds.html#N12D24">24.13. Summary</a></span></dt></dl></dd><dt><span class="chapter"><a href="plugins.html">25. Gradle Plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins.html#N12D5A">25.1. What plugins do</a></span></dt><dt><span class="section"><a href="plugins.html#sec:types_of_plugins">25.2. Types of plugins</a></span></dt><dt><span class="section"><a href="plugins.html#sec:using_plugins">25.3. Applying plugins</a></span></dt><dt><span class="section"><a href="plugins.html#sec:applying_plugins_buildscript">25.4. Applying plugins with the buildscript block</a></span></dt><dt><span class="section"><a href="plugins.html#sec:plugins_block">25.5. Applying plugins with the plugins DSL</a></span></dt><dt><span class="section"><a href="plugins.html#N12E9B">25.6. Finding community plugins</a></span></dt><dt><span class="section"><a href="plugins.html#N12EA4">25.7. More on plugins</a></span></dt></dl></dd><dt><span class="chapter"><a href="standard_plugins.html">26. Standard Gradle plugins</a></span></dt><dd><dl><dt><span class="section"><a href="standard_plugins.html#N12EB3">26.1. Language plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N12F44">26.2. Incubating language plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N12FEB">26.3. Integration plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N130B2">26.4. Incubating integration plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N13135">26.5. Software development plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N132D1">26.6. Incubating software development plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N133BD">26.7. Base plugins</a></span></dt><dt><span class="section"><a href="standard_plugins.html#N13430">26.8. Third party plugins</a></span></dt></dl></dd><dt><span class="chapter"><a href="project_reports_plugin.html">27. The Project Report Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="project_reports_plugin.html#N1344F">27.1. Usage</a></span></dt><dt><span class="section"><a href="project_reports_plugin.html#N13457">27.2. Tasks</a></span></dt><dt><span class="section"><a href="project_reports_plugin.html#N134DE">27.3. Project layout</a></span></dt><dt><span class="section"><a href="project_reports_plugin.html#N134E3">27.4. Dependency management</a></span></dt><dt><span class="section"><a href="project_reports_plugin.html#N134E8">27.5. Convention properties</a></span></dt></dl></dd><dt><span class="chapter"><a href="buildDashboard_plugin.html">28. The Build Dashboard Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="buildDashboard_plugin.html#N13590">28.1. Usage</a></span></dt><dt><span class="section"><a href="buildDashboard_plugin.html#N135B7">28.2. Tasks</a></span></dt><dt><span class="section"><a href="buildDashboard_plugin.html#N135E2">28.3. Project layout</a></span></dt><dt><span class="section"><a href="buildDashboard_plugin.html#N135E7">28.4. Dependency management</a></span></dt><dt><span class="section"><a href="buildDashboard_plugin.html#N135EC">28.5. Configuration</a></span></dt></dl></dd><dt><span class="chapter"><a href="comparing_builds.html">29. Comparing Builds</a></span></dt><dd><dl><dt><span class="section"><a href="comparing_builds.html#N13614">29.1. Definition of terms</a></span></dt><dt><span class="section"><a href="comparing_builds.html#N1364A">29.2. Current Capabilities</a></span></dt><dt><span class="section"><a href="comparing_builds.html#N13673">29.3. Comparing Gradle Builds</a></span></dt></dl></dd><dt><span class="chapter"><a href="artifact_management.html">30. Publishing artifacts</a></span></dt><dd><dl><dt><span class="section"><a href="artifact_management.html#N136E7">30.1. Introduction</a></span></dt><dt><span class="section"><a href="artifact_management.html#artifacts_and_configurations">30.2. Artifacts and configurations</a></span></dt><dt><span class="section"><a href="artifact_management.html#N1370F">30.3. Declaring artifacts</a></span></dt><dt><span class="section"><a href="artifact_management.html#N1374D">30.4. Publishing artifacts</a></span></dt><dt><span class="section"><a href="artifact_management.html#project_libraries">30.5. More about project libraries</a></span></dt></dl></dd><dt><span class="chapter"><a href="maven_plugin.html">31. The Maven Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="maven_plugin.html#N137A2">31.1. Usage</a></span></dt><dt><span class="section"><a href="maven_plugin.html#N137B1">31.2. Tasks</a></span></dt><dt><span class="section"><a href="maven_plugin.html#N137E1">31.3. Dependency management</a></span></dt><dt><span class="section"><a href="maven_plugin.html#N137E6">31.4. Convention properties</a></span></dt><dt><span class="section"><a href="maven_plugin.html#N1383A">31.5. Convention methods</a></span></dt><dt><span class="section"><a href="maven_plugin.html#uploading_to_maven_repositories">31.6. Interacting with Maven repositories</a></span></dt></dl></dd><dt><span class="chapter"><a href="signing_plugin.html">32. The Signing Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="signing_plugin.html#N13A49">32.1. Usage</a></span></dt><dt><span class="section"><a href="signing_plugin.html#N13A58">32.2. Signatory credentials</a></span></dt><dt><span class="section"><a href="signing_plugin.html#N13A8A">32.3. Specifying what to sign</a></span></dt><dt><span class="section"><a href="signing_plugin.html#N13B13">32.4. Publishing the signatures</a></span></dt><dt><span class="section"><a href="signing_plugin.html#N13B21">32.5. Signing POM files</a></span></dt></dl></dd><dt><span class="chapter"><a href="publishing_ivy.html">33. Ivy Publishing (new)</a></span></dt><dd><dl><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:plugin">33.1. The &ldquo;<code class="literal">ivy-publish</code>&rdquo; Plugin</a></span></dt><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:publications">33.2. Publications</a></span></dt><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:repositories">33.3. Repositories</a></span></dt><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:publishing">33.4. Performing a publish</a></span></dt><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:descriptor">33.5. Generating the Ivy module descriptor file without publishing</a></span></dt><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:example">33.6. Complete example</a></span></dt><dt><span class="section"><a href="publishing_ivy.html#publishing_ivy:future">33.7. Future features</a></span></dt></dl></dd><dt><span class="chapter"><a href="publishing_maven.html">34. Maven Publishing (new)</a></span></dt><dd><dl><dt><span class="section"><a href="publishing_maven.html#N13E4E">34.1. The &ldquo;<code class="literal">maven-publish</code>&rdquo; Plugin</a></span></dt><dt><span class="section"><a href="publishing_maven.html#publishing_maven:publications">34.2. Publications</a></span></dt><dt><span class="section"><a href="publishing_maven.html#publishing_maven:repositories">34.3. Repositories</a></span></dt><dt><span class="section"><a href="publishing_maven.html#publishing_maven:publishing">34.4. Performing a publish</a></span></dt><dt><span class="section"><a href="publishing_maven.html#publishing_maven:install">34.5. Publishing to Maven Local</a></span></dt><dt><span class="section"><a href="publishing_maven.html#publishing_maven:generate-pom">34.6. Generating the POM file without publishing</a></span></dt></dl></dd><dt><span class="chapter"><a href="distribution_plugin.html">35. The Distribution Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="distribution_plugin.html#N140BC">35.1. Usage</a></span></dt><dt><span class="section"><a href="distribution_plugin.html#N140FC">35.2. Tasks</a></span></dt><dt><span class="section"><a href="distribution_plugin.html#N14231">35.3. Distribution contents</a></span></dt><dt><span class="section"><a href="distribution_plugin.html#N14258">35.4. Publishing distributions</a></span></dt></dl></dd><dt><span class="chapter"><a href="announce_plugin.html">36. The Announce Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="announce_plugin.html#N14286">36.1. Usage</a></span></dt><dt><span class="section"><a href="announce_plugin.html#N14309">36.2. Configuration</a></span></dt></dl></dd><dt><span class="chapter"><a href="build_announcements_plugin.html">37. The Build Announcements Plugin</a></span></dt><dd><dl><dt><span class="section"><a href="build_announcements_plugin.html#N14325">37.1. Usage</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><div><div class="navbar"><a xmlns:xslthl="http://xslthl.sf.net" href="embedding.html" title="Chapter&nbsp;13.&nbsp;Embedding Gradle">Previous</a><span>|</span><a xmlns:xslthl="http://xslthl.sf.net" href="userguide.html" title="Gradle User Guide">Contents</a><span>|</span><a xmlns:xslthl="http://xslthl.sf.net" href="tutorial_using_tasks.html" title="Chapter&nbsp;14.&nbsp;Build Script Basics">Next</a></div></div></div></body></html>