# GenerateIdeaModule

API Documentation: | `GenerateIdeaModule`

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`.

### Properties

Property | Description
`inputFile` | The input file to load the initial configuration from. Defaults to the output file. If the specified input file does not exist, this task uses some default initial configuration.
`module` | The Idea module model containing the details required to generate the module file.
`outputFile` | 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.

### Methods

No methods

### Script blocks

No script blocks

### Property details

#### `File` `inputFile`

The input file to load the initial configuration from. Defaults to the output file. If the specified input file does not exist, this task uses some default initial configuration.

#### `IdeaModule` `module`

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

Default with `idea` plugin:
  `project.idea.module`

#### `File` `outputFile`

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.

Default with `idea` plugin:
  ``${project.projectDir}`/`${project.name}`.iml` (sometimes the `project.name` is prefixed with parts of `${project.path}` to guarantee uniqueness). Bear in mind that usually it is easier to use moduleName property instead of outputFile property.