private void checkOutDirWritable(File outputDirectory) throws MojoExecutionException {
		if (!outputDirectory.exists()) {
			checkIfOutputCanBeCreated();
			checkIfOutputDirIsWritable();
			if (verbose) {
				log.info("Output dir check OK");
			}
		}
		else if (!outputDirectory.canWrite()) {
			throw new MojoExecutionException(
					"The output dir exists but was not writable. "
							+ "Try running maven with the 'clean' goal.");
		}
	}
private void checkOutDirWritable ( File outputDirectory ) throws MojoExecutionException { if ( ! outputDirectory . exists ( ) ) { checkIfOutputCanBeCreated ( ) ; checkIfOutputDirIsWritable ( ) ; if ( verbose ) { log . info ( "Output dir check OK" ) ; } } else if ( ! outputDirectory . canWrite ( ) ) { throw new MojoExecutionException ( "The output dir exists but was not writable. " + "Try running maven with the 'clean' goal." ) ; } }
Check if the output directory exist and is writable. If not, try to
create an output dir and see if that is writable.

@param outputDirectory The dir where the result will be placed

@throws MojoExecutionException When the output directory is not writable