org.gradle.plugins.ide.idea

## Class GenerateIdeaModule

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.api.internal.ConventionTask
      - - org.gradle.plugins.ide.api.GeneratorTask<T>
        - - org.gradle.plugins.ide.api.XmlGeneratorTask<Module>
          - - org.gradle.plugins.ide.idea.GenerateIdeaModule

- All Implemented Interfaces:
    Comparable<Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.IConventionAware, org.gradle.api.internal.TaskInternal, ExtensionAware, Task, org.gradle.util.Configurable<Task>

      public class GenerateIdeaModule
      extends XmlGeneratorTask<Module>

  Generates an IDEA module file. If you want to fine tune the idea configuration

  Please refer to interesting examples on idea configuration in `IdeaModule`.

  At this moment nearly all configuration is done via `IdeaModule`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Task

      `Task.Namer`

  - ### Field Summary

    - ### Fields inherited from class org.gradle.plugins.ide.api.GeneratorTask

      `afterConfigured, beforeConfigured, domainObject, generator`

    - ### Fields inherited from interface org.gradle.api.Task

      `TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `GenerateIdeaModule()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `configure(Module xmlModule)`
    `protected Module` | `create()`
    `IdeaModule` | `getModule()` The Idea module model containing the details required to generate the module file.
    `File` | `getOutputFile()` Configures output *.iml file.
    `void` | `setModule(IdeaModule module)`
    `void` | `setOutputFile(File newOutputFile)` Sets the output file to write the final configuration to.

    - ### Methods inherited from class org.gradle.plugins.ide.api.XmlGeneratorTask

      `getXmlTransformer`

    - ### Methods inherited from class org.gradle.plugins.ide.api.GeneratorTask

      `getInputFile, getInputFileIfExists, getInstantiator, setInputFile`

    - ### Methods inherited from class org.gradle.api.internal.ConventionTask

      `conventionMapping, conventionMapping, getConventionMapping`

    - ### Methods inherited from class org.gradle.api.internal.AbstractTask

      `addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doLast, doLast, execute, finalizedBy, getActionClassLoaders, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### GenerateIdeaModule

          public GenerateIdeaModule()

  - ### Method Detail

    - #### create

          protected Module create()

      Specified by:
        `create` in class `XmlGeneratorTask<Module>`

    - #### configure

          protected void configure(Module xmlModule)

      Specified by:
        `configure` in class `XmlGeneratorTask<Module>`

    - #### getOutputFile

          public File getOutputFile()

      Configures output *.iml file. It's optional because the task should configure it correctly for you (including making sure it is unique in the multi-module build). If you really need to change the output file name it is much easier to do it via the idea.module.name property.

      Please refer to documentation in `IdeaModule` name property. In IntelliJ IDEA the module name is the same as the name of the *.iml file.

      Overrides:
        `getOutputFile` in class `GeneratorTask<Module>`
      Returns:
        The output file.

    - #### setOutputFile

          public void setOutputFile(File newOutputFile)

      Description copied from class: `GeneratorTask`
      Sets the output file to write the final configuration to.
      Overrides:
        `setOutputFile` in class `GeneratorTask<Module>`
      Parameters:
        `newOutputFile` - The output file.

    - #### getModule

          @Internal
          public IdeaModule getModule()

      The Idea module model containing the details required to generate the module file.

    - #### setModule

          public void setModule(IdeaModule module)