geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: car-maven-plugin and <useTransitiveDependencies>true</useTransitiveDependencies>
Date Wed, 13 Aug 2008 07:44:54 GMT
As a first step to fixing our dependencies I'm going to use mvn  
dependency:analyze to remove unneeded dependencies and add ones  
directly used but not declared explicitly.  I think this is going to  
remove the specification of dependencies in pom packaging projects.

I found some advice on why to do this here:  http://www.sonatype.com/book/reference/optimizing.html#d0e6921

If anyone objects please speak up before I get too far.

thanks
david jencks

On Aug 12, 2008, at 11:23 PM, David Jencks wrote:

>
> On Aug 12, 2008, at 6:28 PM, Kevan Miller wrote:
>
>>
>> On Aug 12, 2008, at 4:03 PM, David Jencks wrote:
>>
>>>
>>> On Aug 12, 2008, at 12:17 PM, Jarek Gawor wrote:
>>>
>>>> I think we should stop using
>>>> <useTransitiveDependencies>true</useTransitiveDependencies> in
>>>> car-maven-plugin. It's just pulling in too much stuff and it's  
>>>> hard to
>>>> control it (see https://issues.apache.org/jira/browse/GERONIMO-4233) 
>>>> .
>>>> Looks like only ./framework/configs/gshell-* configs are using that
>>>> option.
>>>
>>> I've been considering this since I added the setting.  IMO it's  
>>> just revealing problems with our dependency management, not  
>>> causing them.  My goal is to use it everywhere.  Here's my half- 
>>> baked plan:
>>>
>>> 1. make it so the c-m-p configuration can apply small tweaks to  
>>> the maven dependencies such as the import classes/services/all  
>>> setting rather than having to replace the entire maven  
>>> dependencies set with a near-copy.
>>> 2. develop some tooling to compare results with and without  
>>> useTransitiveDependencies
>>> 3. starting with framework, convert all the cars to  
>>> useTransitiveDependencies=true, adding <exclusions> and changing  
>>> scopes in dependencies as needed.
>>> 4. In server/trunk/plugins (and plugins) convert all out-of-plugin  
>>> dependencies to dependencies on cars.
>>>
>>> Anyone want to help with this?
>>
>> Sounds like a recipe for including a bunch of stuff that we don't  
>> want or need...
>>
>> Can you elaborate on why you think it's better to opt out, rather  
>> than opt in?
>
> I'm suggesting 2 things:
>
> 1. fix our dependencies so they are correct.  This, by itself, will  
> make useTransitiveDependencies=true work properly.  Any problems  
> such as unwanted inclusions are bugs that have a good chance of  
> producing highly undesirable behavior in maven if they haven't  
> already done so.
> 2. make the build-time classpath match the run-time classpath by  
> using the cars to aggregate their dependencies in maven, just like  
> they do in the running geronimo server.  This should dramatically  
> reduce the number of dependencies in most of the plugin poms.
>
> thanks
> david jencks
>
>>
>> --kevan
>


Mime
View raw message