You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Jason van Zyl <ja...@maven.org> on 2006/11/28 15:51:07 UTC

cyclic dependency in plugins

I'm sure folks know but how did the cycle end up in there:

[INFO]  
------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO]  
------------------------------------------------------------------------
[INFO] The projects in the reactor contain a cyclic reference: Edge  
between 'Vertex{label='org.apache.maven.plugins:maven-javadoc- 
plugin'}' and 'Vertex{label='org.apache.maven.plugins:maven- 
checkstyle-plugin'}' introduces to cycle in the graph  
org.apache.maven.plugins:maven-checkstyle-plugin -->  
org.apache.maven.plugins:maven-javadoc-plugin -->  
org.apache.maven.plugins:maven-checkstyle-plugin

Can we roll that one back?

It's pretty much impossible to do anything at the reactor level  
currently in the plugins. Not good.

Jason.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: cyclic dependency in plugins

Posted by Brett Porter <br...@apache.org>.
On 30/11/2006, at 1:11 AM, Jason van Zyl wrote:

>
> On 29 Nov 06, at 1:35 AM 29 Nov 06, Brett Porter wrote:
>
>> You're oversimplifying it. There is no cycle when you run mvn  
>> install, Maven is misdetecting it.
>>
>
> I cannot even run "mvn clean" in the plugins directory so I'm not  
> sure what you're talking about. Try it.

I have tried it, and know it is broken.

Maven is misdetecting a cycle in the reactor dependency logic which  
happens right at the start, before any plugin stuff comes in, so it  
affects everything.

There is no logical cycle in there, as explained below.

>
>> When you generate a site, if you are to do "install site" on both  
>> without having a working version of either first, then javadoc ->  
>> checkstyle ->javadoc is never going to be a cycle you can fix.  
>> You'd need to install both first, then build the site for both to  
>> make it work.
>>
>> The reporting dependencies need to only be assessed when you are  
>> generating the site, not building the plugin. Then, it isn't a  
>> problem because you can mvn install without any cycle, and mvn  
>> site has no cycle because the things are already built so the  
>> order isn't important.
>>
>> What's more, versions need to be honoured. We should be able to  
>> use the last javadoc release (and so no dependency in the reactor)  
>> for the reporting, while building trunk.
>>
>> Two relatively simple things to fix. The only workaround is to  
>> remove the reporting plugins from the pom altogether (copying it  
>> to every plugin will only work if you leave some of them out, eg  
>> no javadoc on checkstyle).
>>
>> - Brett
>>
>> On 29/11/2006, at 4:32 PM, Jason van Zyl wrote:
>>
>>> On 28 Nov 06, at 5:25 PM 28 Nov 06, Brett Porter wrote:
>>>
>>>> It's filed in JIRA. I think we need to fix Maven.
>>>>
>>>
>>> To allow cycles? I mean the second that cycle was introduced it  
>>> made working with the plugins pretty crappy. How about fixing the  
>>> cycle?
>>>
>>>> The only way to fix this is to disable the reporting, or copy it  
>>>> into every plugin - not really desirable either.
>>>
>>> Or fix the cycle??
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: cyclic dependency in plugins

Posted by Jason van Zyl <ja...@maven.org>.
On 29 Nov 06, at 1:35 AM 29 Nov 06, Brett Porter wrote:

> You're oversimplifying it. There is no cycle when you run mvn  
> install, Maven is misdetecting it.
>

I cannot even run "mvn clean" in the plugins directory so I'm not  
sure what you're talking about. Try it.

> When you generate a site, if you are to do "install site" on both  
> without having a working version of either first, then javadoc ->  
> checkstyle ->javadoc is never going to be a cycle you can fix.  
> You'd need to install both first, then build the site for both to  
> make it work.
>
> The reporting dependencies need to only be assessed when you are  
> generating the site, not building the plugin. Then, it isn't a  
> problem because you can mvn install without any cycle, and mvn site  
> has no cycle because the things are already built so the order  
> isn't important.
>
> What's more, versions need to be honoured. We should be able to use  
> the last javadoc release (and so no dependency in the reactor) for  
> the reporting, while building trunk.
>
> Two relatively simple things to fix. The only workaround is to  
> remove the reporting plugins from the pom altogether (copying it to  
> every plugin will only work if you leave some of them out, eg no  
> javadoc on checkstyle).
>
> - Brett
>
> On 29/11/2006, at 4:32 PM, Jason van Zyl wrote:
>
>> On 28 Nov 06, at 5:25 PM 28 Nov 06, Brett Porter wrote:
>>
>>> It's filed in JIRA. I think we need to fix Maven.
>>>
>>
>> To allow cycles? I mean the second that cycle was introduced it  
>> made working with the plugins pretty crappy. How about fixing the  
>> cycle?
>>
>>> The only way to fix this is to disable the reporting, or copy it  
>>> into every plugin - not really desirable either.
>>
>> Or fix the cycle??
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: cyclic dependency in plugins

Posted by Brett Porter <br...@apache.org>.
You're oversimplifying it. There is no cycle when you run mvn  
install, Maven is misdetecting it.

When you generate a site, if you are to do "install site" on both  
without having a working version of either first, then javadoc ->  
checkstyle ->javadoc is never going to be a cycle you can fix. You'd  
need to install both first, then build the site for both to make it  
work.

The reporting dependencies need to only be assessed when you are  
generating the site, not building the plugin. Then, it isn't a  
problem because you can mvn install without any cycle, and mvn site  
has no cycle because the things are already built so the order isn't  
important.

What's more, versions need to be honoured. We should be able to use  
the last javadoc release (and so no dependency in the reactor) for  
the reporting, while building trunk.

Two relatively simple things to fix. The only workaround is to remove  
the reporting plugins from the pom altogether (copying it to every  
plugin will only work if you leave some of them out, eg no javadoc on  
checkstyle).

- Brett

On 29/11/2006, at 4:32 PM, Jason van Zyl wrote:

> On 28 Nov 06, at 5:25 PM 28 Nov 06, Brett Porter wrote:
>
>> It's filed in JIRA. I think we need to fix Maven.
>>
>
> To allow cycles? I mean the second that cycle was introduced it  
> made working with the plugins pretty crappy. How about fixing the  
> cycle?
>
>> The only way to fix this is to disable the reporting, or copy it  
>> into every plugin - not really desirable either.
>
> Or fix the cycle??
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: cyclic dependency in plugins

Posted by Jason van Zyl <ja...@maven.org>.
On 28 Nov 06, at 5:25 PM 28 Nov 06, Brett Porter wrote:

> It's filed in JIRA. I think we need to fix Maven.
>

To allow cycles? I mean the second that cycle was introduced it made  
working with the plugins pretty crappy. How about fixing the cycle?

> The only way to fix this is to disable the reporting, or copy it  
> into every plugin - not really desirable either.

Or fix the cycle??

>
> - Brett
>
> On 29/11/2006, at 2:11 AM, Stephane Nicoll wrote:
>
>> I would like to know as well. It's been ages since we have this  
>> problem BTW.
>>
>> On 11/28/06, Jason van Zyl <ja...@maven.org> wrote:
>>> I'm sure folks know but how did the cycle end up in there:
>>>
>>> [INFO]
>>> -------------------------------------------------------------------- 
>>> ----
>>> [ERROR] BUILD FAILURE
>>> [INFO]
>>> -------------------------------------------------------------------- 
>>> ----
>>> [INFO] The projects in the reactor contain a cyclic reference: Edge
>>> between 'Vertex{label='org.apache.maven.plugins:maven-javadoc-
>>> plugin'}' and 'Vertex{label='org.apache.maven.plugins:maven-
>>> checkstyle-plugin'}' introduces to cycle in the graph
>>> org.apache.maven.plugins:maven-checkstyle-plugin -->
>>> org.apache.maven.plugins:maven-javadoc-plugin -->
>>> org.apache.maven.plugins:maven-checkstyle-plugin
>>>
>>> Can we roll that one back?
>>>
>>> It's pretty much impossible to do anything at the reactor level
>>> currently in the plugins. Not good.
>>>
>>> Jason.
>>>
>>> -------------------------------------------------------------------- 
>>> -
>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: cyclic dependency in plugins

Posted by Brett Porter <br...@apache.org>.
It's filed in JIRA. I think we need to fix Maven.

The only way to fix this is to disable the reporting, or copy it into  
every plugin - not really desirable either.

- Brett

On 29/11/2006, at 2:11 AM, Stephane Nicoll wrote:

> I would like to know as well. It's been ages since we have this  
> problem BTW.
>
> On 11/28/06, Jason van Zyl <ja...@maven.org> wrote:
>> I'm sure folks know but how did the cycle end up in there:
>>
>> [INFO]
>> --------------------------------------------------------------------- 
>> ---
>> [ERROR] BUILD FAILURE
>> [INFO]
>> --------------------------------------------------------------------- 
>> ---
>> [INFO] The projects in the reactor contain a cyclic reference: Edge
>> between 'Vertex{label='org.apache.maven.plugins:maven-javadoc-
>> plugin'}' and 'Vertex{label='org.apache.maven.plugins:maven-
>> checkstyle-plugin'}' introduces to cycle in the graph
>> org.apache.maven.plugins:maven-checkstyle-plugin -->
>> org.apache.maven.plugins:maven-javadoc-plugin -->
>> org.apache.maven.plugins:maven-checkstyle-plugin
>>
>> Can we roll that one back?
>>
>> It's pretty much impossible to do anything at the reactor level
>> currently in the plugins. Not good.
>>
>> Jason.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: cyclic dependency in plugins

Posted by Stephane Nicoll <st...@gmail.com>.
I would like to know as well. It's been ages since we have this problem BTW.

On 11/28/06, Jason van Zyl <ja...@maven.org> wrote:
> I'm sure folks know but how did the cycle end up in there:
>
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD FAILURE
> [INFO]
> ------------------------------------------------------------------------
> [INFO] The projects in the reactor contain a cyclic reference: Edge
> between 'Vertex{label='org.apache.maven.plugins:maven-javadoc-
> plugin'}' and 'Vertex{label='org.apache.maven.plugins:maven-
> checkstyle-plugin'}' introduces to cycle in the graph
> org.apache.maven.plugins:maven-checkstyle-plugin -->
> org.apache.maven.plugins:maven-javadoc-plugin -->
> org.apache.maven.plugins:maven-checkstyle-plugin
>
> Can we roll that one back?
>
> It's pretty much impossible to do anything at the reactor level
> currently in the plugins. Not good.
>
> Jason.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org