When using artifacts with full stops in the artifact id the are not loaded
correctly when transitively referenced another project.
----------------------------------------------------------------------------------------------------------------------------------
Key: MNG-1933
URL: http://jira.codehaus.org/browse/MNG-1933
Project: Maven 2
Type: Bug
Components: Artifacts and Repositories
Versions: 2.0.1
Environment: Windows XP, java version "1.5.0_02" Java(TM) 2 Runtime
Environment, Standard Edition (build 1.5.0_02-b09)
Java HotSpot(TM) Client VM (build 1.5.0_02-b09, mixed mode)
Reporter: Chris Stevenson
Priority: Blocker
Attachments: Info.zip
I've written a CSharp plugin for maven which utilises the maven framework + the
csharp plexus compiler to build c# projects inside of maven. I have found that
when I reference a dotnet "System" dll from inside maven as a dependency with
system scope, which also has more than one full stop in the name that it will
compile correctly in the "main" project.
If however I reference this project from another, the transitive dependency
does not work correctly, it consistantly says it cannot find the artifact.
ex...
In main lib
<project>
<modelVersion>4.0.0</modelVersion>
<artifactId>log4net</artifactId>
<groupId>com.javaforge.maven-csharp</groupId>
<name>Apache Log4net</name>
........
<dependency>
<groupId>System</groupId>
<artifactId>System.Reflection.Remoting</artifactId>
<version>1.1</version>
<type>dotnet-library</type>
<scope>system</scope>
<systemPath>${dotnet.home}/System.Runtime.Remoting.dll</systemPath>
</dependency>
........
</project>
In lib which references main lib:
<dependency>
<groupId>com.javaforge.maven-csharp</groupId>
<artifactId>log4net</artifactId>
<version>1.2.9-beta</version>
<type>dotnet-library</type>
<scope>compile</scope>
</dependency>
output:
[DEBUG] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: System artifact:
System:System.Runtime.Remoting:dotnet-library:1.1
not found in path: ${dotnet.home}\System.Runtime.Remoting.dll
System:Remoting:1.1:dotnet-library
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:528)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:469)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:448)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:301)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:268)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:137)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:316)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:113)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:249)
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)
Even though this dll is definately in this location.
My assertion is that the transitive dependency mechanism my be getting
confused, thinking that the extra full stop denotes a
--
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
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]