[ 
http://jira.codehaus.org/browse/MECLIPSE-269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=205308#action_205308
 ] 

Matthew McCullough commented on MECLIPSE-269:
---------------------------------------------

I don't think this is a core issue, because I encountered a very similar 
message:
Cant canonicalize system path: {0}

After much searching through code, I found the solution in an unlikely place.  
The resource tag documentation.

Quoted from my comments on MECLIPSE:-608: 
http://jira.codehaus.org/browse/MECLIPSE-608
>>
Typically, the cause of this is because a POM author put a replaceable like 
${basedir} in the target or directory tags.  This is not allowed.  Target and 
Directory tags are relative to the POM, and are not supposed to have drive 
letters and paths to roots of the filesystem.

http://maven.apache.org/ref/2.2.1/maven-model/maven.html#class_resource

If you remove the ${basedir} type references from the paths, the plugin works 
just fine.
<<

> "Can't canonicalize system path" error using the goal eclispse:eclipse
> ----------------------------------------------------------------------
>
>                 Key: MECLIPSE-269
>                 URL: http://jira.codehaus.org/browse/MECLIPSE-269
>             Project: Maven 2.x Eclipse Plugin
>          Issue Type: Bug
>    Affects Versions: 2.3
>         Environment: maven-eclipse-plugin version 2.3
> maven-war-plugin version 2.0.2 
>            Reporter: Paul Spencer
>            Priority: Minor
>
> I get a "Can't canonicalize system path" error using the goal 
> eclispse:eclipse when
> the <warSourceDirectory> of the maven-war-plugin starts with ${basedir}. If I 
> remove the
> ${basedir}, the build is successful.
> If, as it appears, the war plugin uses different rules related to the 
> prefixing a path with ${basedir}, then I consider it a bug because the 
> configuration of <warSourceDirectory> is inconsistant with similar tags.
> Per Wayne Fay, I have log this issue against the Eclipse plugin. 
> [INFO] 
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Can't canonicalize system path: 
> C:\cvs_apms\ipim-webapp\C:\cvs_apms\ipim-webapp\src\webapp
> Embedded error: The filename, directory name, or volume label syntax is 
> incorrect
> [INFO] 
> ------------------------------------------------------------------------
> [DEBUG] Trace
> org.apache.maven.lifecycle.LifecycleExecutionException: Can't canonicalize 
> system path: C:\cvs_apms\ipim-webapp\C:\cvs_apms\ipim-webapp\src\webapp
>         at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:564)
>         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:334)
>         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125)
>         at org.apache.maven.cli.MavenCli.main(MavenCli.java:272)
>         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:324)
>         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)
> Caused by: org.apache.maven.plugin.MojoExecutionException: Can't canonicalize 
> system path: C:\cvs_apms\ipim-webapp\C:\cvs_apms\ipim-webapp\src\webapp
>         at 
> org.apache.maven.plugin.ide.IdeUtils.getCanonicalPath(IdeUtils.java:77)
>         at 
> org.apache.maven.plugin.ide.IdeUtils.toRelativeAndFixSeparator(IdeUtils.java:89)
>         at 
> org.apache.maven.plugin.eclipse.writers.EclipseWtpComponentWriter.writeModuleTypeComponent(EclipseWtpComponentWriter.java:142)
>         at 
> org.apache.maven.plugin.eclipse.writers.EclipseWtpComponentWriter.write(EclipseWtpComponentWriter.java:97)
>         at 
> org.apache.maven.plugin.eclipse.EclipsePlugin.writeConfiguration(EclipsePlugin.java:671)
>         at 
> org.apache.maven.plugin.ide.AbstractIdeSupportMojo.execute(AbstractIdeSupportMojo.java:402)
>         at 
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:443)
>         at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
>         ... 16 more
> Caused by: java.io.IOException: The filename, directory name, or volume label 
> syntax is incorrect
>         at java.io.WinNTFileSystem.canonicalize0(Native Method)
>         at java.io.Win32FileSystem.canonicalize(Win32FileSystem.java:354)
>         at java.io.File.getCanonicalPath(File.java:513)
>         at 
> org.apache.maven.plugin.ide.IdeUtils.getCanonicalPath(IdeUtils.java:73)
>         ... 23 more
> [INFO] 
> ------------------------------------------------------------------------
> Paul Spencer

-- 
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

        

Reply via email to