cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aki Yoshida <elak...@gmail.com>
Subject Re: Cant canonicalize system path
Date Thu, 01 Aug 2013 16:27:23 GMT
I started seeing this problem no so long ago in systests-databinding
and systests-codegen. Before that, we didn't have this problem. I saw
the windows paths are not correctly compared and recognized as one
being the parent of the other. And this is resulting in a
syntactically invalid path.

I have been wondering if we always had this problem but we didn't see
it or some recent change caused this problem.

Using a relative path or converting the path in a way so that the path
comparison works will solve this problem. But I haven't looked into it
in details.

regards, aki




2013/8/1 vladimiro <vladimiro.corsi@gmail.com>:
> Hi,
> when building the CXF trunk (CXF 3.0.0-SNAPHSOT) with the following
> environment:
>
> Apache Maven 3.1.0 (893ca28a1da9d5f51ac03827af98bb730128f9f2; 2013-06-28
> 04:15:32+0200)
> Maven home: C:\apache-maven-3.1.0\bin\..
> Java version: 1.7.0_25, vendor: Oracle Corporation
> Java home: C:\Program Files\Java\jdk1.7.0_25\jre
> Default locale: en_US, platform encoding: Cp1252
> OS name: "windows 7", version: "6.1", arch: "x86", family: "windows"
>
>
>
> I have the following error:
>
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-eclipse-plugin:2.9:eclipse
> (setup.eclipse.project) on project cxf-systests-databinding: Cant
> canonicalize system path: {0}: The filename, directory name, or volume
> label syntax is incorrect -> [Help 1]
> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute
> goal org.apache.maven.plugins:maven-eclipse-plugin:2.9:eclipse
> (setup.eclipse.project) on project cxf-systests-databinding: Cant
> canonicalize system path: {0}
>     at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
>     at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
>     at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
>     at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
>     at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
>     at
> org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
>     at
> org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:318)
>     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:153)
>     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
>     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
>     at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke(Method.java:606)
>     at
> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
>     at
> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
>     at
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:414)
>     at
> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:357)
> Caused by: org.apache.maven.plugin.MojoExecutionException: Cant
> canonicalize system path: {0}
>     at
> org.apache.maven.plugin.ide.IdeUtils.getCanonicalPath(IdeUtils.java:147)
>     at
> org.apache.maven.plugin.ide.IdeUtils.toRelativeAndFixSeparator(IdeUtils.java:591)
>     at
> org.apache.maven.plugin.eclipse.EclipsePlugin.extractResourceDirs(EclipsePlugin.java:1787)
>     at
> org.apache.maven.plugin.eclipse.EclipsePlugin.buildDirectoryList(EclipsePlugin.java:1684)
>     at
> org.apache.maven.plugin.eclipse.EclipsePlugin.createEclipseWriterConfig(EclipsePlugin.java:1359)
>     at
> org.apache.maven.plugin.eclipse.EclipsePlugin.writeConfiguration(EclipsePlugin.java:1178)
>     at
> org.apache.maven.plugin.ide.AbstractIdeSupportMojo.execute(AbstractIdeSupportMojo.java:511)
>     at
> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106)
>     at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
>     ... 19 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:414)
>     at java.io.File.getCanonicalPath(File.java:589)
>     at
> org.apache.maven.plugin.ide.IdeUtils.getCanonicalPath(IdeUtils.java:143)
>     ... 27 more
>
>
>
> After investigation it looks like cxf-codegen-plugin is setting absolute
> paths for maven resource's targetPaths and that makes the eclipse plugin
> crash. See also http://jira.codehaus.org/browse/MECLIPSE-269 for reference.
>
> I see at lines 359 and 375 of
> org.apache.cxf.maven_plugin.AbstractCodegenMoho:
>
> ...
> r2.setTargetPath(project.getBuild().getOutputDirectory());
> ...
> r2.setTargetPath(project.getBuild().getTestOutputDirectory());
> ...
>
> If I make the targetPaths relative I'm able to complete my build
> successfully.
>
> What do you think about it? Is that a bug? Is something wrong in my
> configuration?
>
> Best regards
>
> Vladimiro Corsi

Mime
View raw message