Wendy,
The circular dependency between the API and shared projects is a little concerning. Is this something that can be easily be fixed?

Since the dependency is marked as "provided", does this eliminate the circular depenency issues in Maven?

I use Eclipse and the Maven Eclipse plugin to generated the Eclipse project files. Currently the shared projects reference the 1.1.1 version of the API. The means the debuggers and the other tools in the Eclipse are using 1.1.1 API. Like you said the API does not change, but use of an older version it can be confusing.

Paul Spencer



Wendy Smoak (JIRA) wrote:
[ http://issues.apache.org/jira/browse/MYFACES-1406?page=comments#action_12433709 ] Wendy Smoak commented on MYFACES-1406:
--------------------------------------


Core has a dependency on Shared.

myfaces/core/impl/pom.xml:
                <artifactItem>
                  <groupId>org.apache.myfaces.shared</groupId>
                  <artifactId>myfaces-shared-impl</artifactId>
                  <version>2.0.4-SNAPSHOT</version>
                </artifactItem>

Therefore, Shared cannot depend on the current snapshot of Core or we will have a 
circular dependency.  (Note that it's in a plugin execution and not a normal 
<dependency>, so Maven won't catch it during dependency resolution.)

The JSF 1.1 API hasn't changed, so it shouldn't matter whether myfaces-impl 
builds against 1.1.1 or 1.1.5-SNAPSHOT (or against the API jar from the 
reference implementation, for that matter.)  I'm not as opposed to this one, 
but I don't think it's necessary... and the fewer snapshot dependencies the 
better.  The situation may improve once 1.1.4 is available, because it will be 
in the same groupId as the current snapshot.


Core and Shared project has dependency on myfaces:myfaces-api version 1.1.1
---------------------------------------------------------------------------

                Key: MYFACES-1406
                URL: http://issues.apache.org/jira/browse/MYFACES-1406
            Project: MyFaces Core
         Issue Type: Bug
         Components: build process
   Affects Versions: 1.1.5-SNAPSHOT
           Reporter: Paul Spencer
        Attachments: patch-to-core.txt, patch-to-shared.txt


Core and Shared project has dependency on myfaces:myfaces-api version 1.1.1.  
Their are 2 problems here:
1) The dependency group is myfaces instead of org.apache.myfaces.core
2) The version number is wrong.
In many places this problem is minimized by the fact that the depenency is marked as 
"provided".  I notices the problem why using eclipse.  Eclipse was trying to 
use the 1.1.1 version of the API even though I was working with the 1.1.5-SNAPSHOT .


Reply via email to