Package 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<Module>
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
Description
`GenerateIdeaModule()`

## Method Summary

Modifier and Type
Method
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.DefaultTask

`newInputDirectory, newInputFile, newOutputDirectory, newOutputFile`

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

`addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, 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 Details

### GenerateIdeaModule

public GenerateIdeaModule()

## Method Details

### 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)