| package org.plugin; |
| |
| import org.apache.maven.plugin.Mojo; |
| import org.apache.maven.plugin.MojoExecutionException; |
| import org.apache.maven.plugin.MojoFailureException; |
| import org.apache.maven.plugin.logging.Log; |
| |
| import java.io.File; |
| import java.io.FileWriter; |
| import java.io.IOException; |
| |
| /** |
| * @goal test |
| */ |
| public class TestMojo |
| implements Mojo |
| { |
| |
| private Log log; |
| |
| /** |
| * @parameter default-value="${project.build.directory}" |
| * @required |
| * @readonly |
| */ |
| private File buildDir; |
| |
| public void execute() |
| throws MojoExecutionException, MojoFailureException |
| { |
| File outFile = new File( buildDir, "out.txt" ); |
| FileWriter writer = null; |
| try |
| { |
| outFile.getParentFile().mkdirs(); |
| |
| writer = new FileWriter( outFile ); |
| writer.write( "Test" ); |
| } |
| catch ( IOException e ) |
| { |
| throw new MojoExecutionException( "Failed to write: " + outFile.getAbsolutePath(), e ); |
| } |
| finally |
| { |
| if ( writer != null ) |
| { |
| try |
| { |
| writer.close(); |
| } |
| catch ( IOException e ) |
| { |
| } |
| } |
| } |
| } |
| |
| public Log getLog() |
| { |
| return log; |
| } |
| |
| public void setLog( Log log ) |
| { |
| this.log = log; |
| } |
| } |