Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: file-management-1.2.1
-
Fix Version/s: file-management-1.2.2
-
Component/s: file-management
-
Labels:None
-
Environment:any
-
Testcase included:yes
-
Patch Submitted:Yes
-
Number of attachments :
Description
I'm trying to use file name mappers inside a maven plugin with the file-management shared project.
I've added a fileset definition in the plugin's configuration as follow :
<plugin> <groupId>info.flex-mojos</groupId> <artifactId>flex-compiler-mojo</artifactId> <extensions>true</extensions> <version>2.0M11-SNAPSHOT</version> <configuration> <includeSources> <param>${basedir}/src</param> </includeSources> <targetPlayer>9.0.28</targetPlayer> <fileset> <directory>${basedir}/src</directory> <includes> <include>**/*.mxml</include> </includes> <mapper> <type>flatten</type> </mapper> </fileset> </configuration> </plugin>
Unfortunately, I get a NPE while trying to retrieve my mapper :
java.lang.NullPointerException
at org.apache.maven.shared.model.fileset.mappers.MapperUtil.getFileNameMapper(MapperUtil.java:114)
at info.rvin.mojo.flexmojo.compiler.ApplicationMojo.setUp(ApplicationMojo.java:194)
at info.rvin.mojo.flexmojo.AbstractIrvinMojo.execute(AbstractIrvinMojo.java:178)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
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:585)
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)
I've checked current trunk on shared/file-management, it seems that the "initializeBuiltIns" call should initialize implementations but it does not.
I have enclosed a trivial patch which should fix this.
The patch is applied in the trunk. Once again thanks.