StringIndexOutOfBoundsException if last line in filtered file does not have a newline as it's last character. -------------------------------------------------------------------------------------------------------------
Key: MRESOURCES-67 URL: http://jira.codehaus.org/browse/MRESOURCES-67 Project: Maven 2.x Resources Plugin Issue Type: Bug Affects Versions: 2.2 Reporter: Paul Smith Priority: Trivial When doing filtering, if one of the files being filtered has it's last line without a proper line feed, an exception is thrown: java.lang.StringIndexOutOfBoundsException: String index out of range: 0 at java.lang.String.charAt(String.java:687) at org.apache.maven.plugin.resources.util.InterpolationFilterReader.read(InterpolationFilterReader.java:193) at org.apache.maven.plugin.resources.util.InterpolationFilterReader.read(InterpolationFilterReader.java:201) at org.apache.maven.plugin.resources.util.InterpolationFilterReader.read(InterpolationFilterReader.java:162) at java.io.Reader.read(Reader.java:123) at org.codehaus.plexus.util.IOUtil.copy(IOUtil.java:212) at org.codehaus.plexus.util.IOUtil.copy(IOUtil.java:200) at org.apache.maven.plugin.resources.ResourcesMojo.copyFile(ResourcesMojo.java:269) at org.apache.maven.plugin.resources.ResourcesMojo.copyResources(ResourcesMojo.java:183) at org.apache.maven.plugin.resources.ResourcesMojo.execute(ResourcesMojo.java:100) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:493) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:463) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Trivial workaround to add a CR/LF or whatever, but took a while to work out! :) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira