mirror of https://github.com/apache/maven.git
Resolving: MNG-1129, encoding is now a plugin parameter on the resources mojos.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@315021 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
8c8c0c6b9e
commit
253fce25ae
|
@ -27,9 +27,13 @@
|
|||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.FileReader;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.Reader;
|
||||
import java.io.Writer;
|
||||
import java.util.Arrays;
|
||||
|
@ -50,6 +54,12 @@
|
|||
public class ResourcesMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
/**
|
||||
* @parameter
|
||||
*/
|
||||
private String encoding;
|
||||
|
||||
/**
|
||||
* The output directory into which to copy the resources.
|
||||
*
|
||||
|
@ -95,6 +105,15 @@ protected void copyResources( List resources, String outputDirectory )
|
|||
{
|
||||
initializeFiltering();
|
||||
|
||||
if ( encoding == null || encoding.length() < 1 )
|
||||
{
|
||||
getLog().info( "Using default encoding to copy filtered resources." );
|
||||
}
|
||||
else
|
||||
{
|
||||
getLog().info( "Using encoding: \'" + encoding + "\' to copy filtered resources." );
|
||||
}
|
||||
|
||||
for ( Iterator i = resources.iterator(); i.hasNext(); )
|
||||
{
|
||||
Resource resource = (Resource) i.next();
|
||||
|
@ -192,10 +211,24 @@ private void copyFile( File from, File to, boolean filtering )
|
|||
else
|
||||
{
|
||||
// buffer so it isn't reading a byte at a time!
|
||||
Reader fileReader = new BufferedReader( new FileReader( from ) );
|
||||
Reader fileReader = null;
|
||||
Writer fileWriter = null;
|
||||
try
|
||||
{
|
||||
if ( encoding == null || encoding.length() < 1 )
|
||||
{
|
||||
fileReader = new BufferedReader( new FileReader( from ) );
|
||||
fileWriter = new FileWriter( to );
|
||||
}
|
||||
else
|
||||
{
|
||||
FileInputStream instream = new FileInputStream( from );
|
||||
FileOutputStream outstream = new FileOutputStream( to );
|
||||
|
||||
fileReader = new BufferedReader( new InputStreamReader( instream, encoding ) );
|
||||
fileWriter = new OutputStreamWriter( outstream, encoding );
|
||||
}
|
||||
|
||||
// support ${token}
|
||||
Reader reader = new InterpolationFilterReader( fileReader, filterProperties, "${", "}" );
|
||||
|
||||
|
@ -204,8 +237,6 @@ private void copyFile( File from, File to, boolean filtering )
|
|||
|
||||
reader = new InterpolationFilterReader( reader, new ReflectionProperties( project ), "${", "}" );
|
||||
|
||||
fileWriter = new FileWriter( to );
|
||||
|
||||
IOUtil.copy( reader, fileWriter );
|
||||
}
|
||||
finally
|
||||
|
|
Loading…
Reference in New Issue