At the project level, you can change the <ProjectFolder>/out part of the output path. If you do so (say, specify some <OutputFolder> instead of <ProjectFolder>/out) but don't redefine the paths at the module level, the compilation results will go to <OutputFolder>/production/<ModuleName> and <OutputFolder>/test/<ModuleName>.

At the module level, you can specify any desirable compilation output location for the module sources and tests individually.

On the Compiler page (the Build, Execution, Deployment section), you may want, for example, to modify the regular expression that describes the extensions of the files to be recognized as resources (the Resource patterns field). Use semicolons (;) to separate individual patterns. See the list of wildcard characters and examples.

On the Excludes page, specify the files and folders that shouldn't be included in compilation. Use to add items to the list.

Note:

If an excluded path is a dependency of the source code being compiled, this path will be included in compilation and processed by the compiler as required.

If a file contains errors and fails to compile, but it is not important for the current project state, or if you want to skip some files and not to include them in the output directory, you can exclude such files from compilation.

On the Java Compiler page, check if the compiler being used is the one that you want. If necessary, select a different compiler.

If you are not happy with the version of the Eclipse compiler bundled with IntelliJ IDEA, you can replace this compiler directly in the IntelliJ IDEA distribution with the one you've downloaded from the Eclipse download page. Note, however, that the name of the corresponding archive should match the pattern ecj-*.jar