Camel 3 pom for JVM 1.8

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Camel 3 pom for JVM 1.8

hakuseki
Hi

My pom includes a dependencyManagement statement for camel (3.0.1)

<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-spring-boot-dependencies</artifactId>
    <version>${camel.version}</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>
and then these dependencies

<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-quartz-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-sql-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-activemq-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-direct-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-bean-starter</artifactId>
</dependency>

but in my build I see several camel dependencies included in the war file that I haven’t specified, esp. camel-core, camel-main…
The ones included are stated here:

https://camel.apache.org/manual/latest/camel-3-migration-guide.html#_modularization_of_camel_core

How can I make it more modular and only include dependencies I have stated?


M

Reply | Threaded
Open this post in threaded view
|

R: Camel 3 pom for JVM 1.8

Giovanni Condello
Hi Mikael,

You can technically exclude any dependencies you want via maven <exclusions> but.... to be honest I don't see the point and you may end up creating more issues for users of your library (?).

camel-core, camel-main are there because they are compile-time deps of e.g. camel-sql

Can you explain a little bit more the rationale behind this request?

Cheers
Giovanni

-----Messaggio originale-----
Da: Mikael Andersson Wigander <[hidden email]>
Inviato: martedì 18 febbraio 2020 15:27
A: [hidden email]
Oggetto: Camel 3 pom for JVM 1.8

Hi

My pom includes a dependencyManagement statement for camel (3.0.1)

<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-spring-boot-dependencies</artifactId>
    <version>${camel.version}</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>
and then these dependencies

<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-quartz-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-sql-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-activemq-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-direct-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-bean-starter</artifactId>
</dependency>

but in my build I see several camel dependencies included in the war file that I haven’t specified, esp. camel-core, camel-main… The ones included are stated here:

https://camel.apache.org/manual/latest/camel-3-migration-guide.html#_modularization_of_camel_core

How can I make it more modular and only include dependencies I have stated?


M

Reply | Threaded
Open this post in threaded view
|

Re: Camel 3 pom for JVM 1.8

hakuseki
Well I just read the migration guide and thought the use of the “modular” approach was to end up with a smaller build including ONLY those I specifically included.

> Maven users of Apache Camel can keep using the dependency camel-core which has transitive dependencies on all of its modules, and therefore no migration is needed. However, users who want to trim the size of the classes on the classpath, can use fine grained Maven dependencies on only the modules needed. You may find how to do that in the examples.


M

> On 18 Feb 2020, at 15:33, Giovanni Condello }
<[hidden email]> wrote:

>
> Hi Mikael,
>
> You can technically exclude any dependencies you want via maven <exclusions> but.... to be honest I don't see the point and you may end up creating more issues for users of your library (?).
>
> camel-core, camel-main are there because they are compile-time deps of e.g. camel-sql
>
> Can you explain a little bit more the rationale behind this request?
>
> Cheers
> Giovanni
>
> -----Messaggio originale-----
> Da: Mikael Andersson Wigander <mikael.grevsten@'mail.com>
> Inviato: martedì 18 febbraio 2020 15:27
> A: [hidden email]
> Oggetto: Camel 3 pom for JVM 1.8
>
> Hi
>
> My pom includes a dependencyManagement statement for camel (3.0.1)
>
> <dependency>
>    <groupId>org.apache.camel.springboot</groupId>
>    <artifactId>camel-spring-boot-dependencies</artifactId>
>    <version>${camel.version}</version>
>    <type>pom</type>
>    <scope>import</scope>
> </dependency>
> and then these dependencies
>
> <dependency>
>    <groupId>org.apache.camel.springboot</groupId>
>    <artifactId>camel-quartz-starter</artifactId>
> </dependency>
> <dependency>
>    <groupId>org.apache.camel.springboot</groupId>
>    <artifactId>camel-sql-starter</artifactId>
> </dependency>
> <dependency>
>    <groupId>org.apache.camel.springboot</groupId>
>    <artifactId>camel-activemq-starter</artifactId>
> </dependency>
> <dependency>
>    <groupId>org.apache.camel.springboot</groupId>
>    <artifactId>camel-direct-starter</artifactId>
> </dependency>
> <dependency>
>    <groupId>org.apache.camel.springboot</groupId>
>    <artifactId>camel-bean-starter</artifactId>
> </dependency>
>
> but in my build I see several camel dependencies included in the war file that I haven’t specified, esp. camel-core, camel-main… The ones included are stated here:
>
> https://camel.apache.org/manual/latest/camel-3-migration-guide.html#_modularization_of_camel_core
>
> How can I make it more modular and only include dependencies I have stated?
>
>
> M
>

Reply | Threaded
Open this post in threaded view
|

Re: Camel 3 pom for JVM 1.8

Andrea Cosentino-3
That's normal. If you use a starter you'll get that dependencies as
transitive deps.

This is clear if you run a dependency:tree on your camel-sql-starter.

That statement applies on plain camel. In the spring-boot context is a bit
different.

Il giorno mar 18 feb 2020 alle ore 15:45 Mikael Andersson Wigander <
[hidden email]> ha scritto:

> Well I just read the migration guide and thought the use of the “modular”
> approach was to end up with a smaller build including ONLY those I
> specifically included.
>
> > Maven users of Apache Camel can keep using the dependency camel-core
> which has transitive dependencies on all of its modules, and therefore no
> migration is needed. However, users who want to trim the size of the
> classes on the classpath, can use fine grained Maven dependencies on only
> the modules needed. You may find how to do that in the examples.
>
>
> M
>
> > On 18 Feb 2020, at 15:33, Giovanni Condello }
> <[hidden email]> wrote:
> >
> > Hi Mikael,
> >
> > You can technically exclude any dependencies you want via maven
> <exclusions> but.... to be honest I don't see the point and you may end up
> creating more issues for users of your library (?).
> >
> > camel-core, camel-main are there because they are compile-time deps of
> e.g. camel-sql
> >
> > Can you explain a little bit more the rationale behind this request?
> >
> > Cheers
> > Giovanni
> >
> > -----Messaggio originale-----
> > Da: Mikael Andersson Wigander <mikael.grevsten@'mail.com>
> > Inviato: martedì 18 febbraio 2020 15:27
> > A: [hidden email]
> > Oggetto: Camel 3 pom for JVM 1.8
> >
> > Hi
> >
> > My pom includes a dependencyManagement statement for camel (3.0.1)
> >
> > <dependency>
> >    <groupId>org.apache.camel.springboot</groupId>
> >    <artifactId>camel-spring-boot-dependencies</artifactId>
> >    <version>${camel.version}</version>
> >    <type>pom</type>
> >    <scope>import</scope>
> > </dependency>
> > and then these dependencies
> >
> > <dependency>
> >    <groupId>org.apache.camel.springboot</groupId>
> >    <artifactId>camel-quartz-starter</artifactId>
> > </dependency>
> > <dependency>
> >    <groupId>org.apache.camel.springboot</groupId>
> >    <artifactId>camel-sql-starter</artifactId>
> > </dependency>
> > <dependency>
> >    <groupId>org.apache.camel.springboot</groupId>
> >    <artifactId>camel-activemq-starter</artifactId>
> > </dependency>
> > <dependency>
> >    <groupId>org.apache.camel.springboot</groupId>
> >    <artifactId>camel-direct-starter</artifactId>
> > </dependency>
> > <dependency>
> >    <groupId>org.apache.camel.springboot</groupId>
> >    <artifactId>camel-bean-starter</artifactId>
> > </dependency>
> >
> > but in my build I see several camel dependencies included in the war
> file that I haven’t specified, esp. camel-core, camel-main… The ones
> included are stated here:
> >
> >
> https://camel.apache.org/manual/latest/camel-3-migration-guide.html#_modularization_of_camel_core
> >
> > How can I make it more modular and only include dependencies I have
> stated?
> >
> >
> > M
> >
>
>
Reply | Threaded
Open this post in threaded view
|

Re: Camel 3 pom for JVM 1.8

hakuseki
Thx, makes sense

Regards

M


> On 18 Feb 2020, at 15:49, Andrea Cosentino <[hidden email]> wrote:
>
> That's normal. If you use a starter you'll get that dependencies as
> transitive deps.
>
> This is clear if you run a dependency:tree on your camel-sql-starter.
>
> That statement applies on plain camel. In the spring-boot context is a bit
> different.
>
> Il giorno mar 18 feb 2020 alle ore 15:45 Mikael Andersson Wigander <
> [hidden email]> ha scritto:
>
>> Well I just read the migration guide and thought the use of the “modular”
>> approach was to end up with a smaller build including ONLY those I
>> specifically included.
>>
>>> Maven users of Apache Camel can keep using the dependency camel-core
>> which has transitive dependencies on all of its modules, and therefore no
>> migration is needed. However, users who want to trim the size of the
>> classes on the classpath, can use fine grained Maven dependencies on only
>> the modules needed. You may find how to do that in the examples.
>>
>>
>> M
>>
>>> On 18 Feb 2020, at 15:33, Giovanni Condello }
>> <[hidden email]> wrote:
>>>
>>> Hi Mikael,
>>>
>>> You can technically exclude any dependencies you want via maven
>> <exclusions> but.... to be honest I don't see the point and you may end up
>> creating more issues for users of your library (?).
>>>
>>> camel-core, camel-main are there because they are compile-time deps of
>> e.g. camel-sql
>>>
>>> Can you explain a little bit more the rationale behind this request?
>>>
>>> Cheers
>>> Giovanni
>>>
>>> -----Messaggio originale-----
>>> Da: Mikael Andersson Wigander <mikael.grevsten@'mail.com>
>>> Inviato: martedì 18 febbraio 2020 15:27
>>> A: [hidden email]
>>> Oggetto: Camel 3 pom for JVM 1.8
>>>
>>> Hi
>>>
>>> My pom includes a dependencyManagement statement for camel (3.0.1)
>>>
>>> <dependency>
>>>   <groupId>org.apache.camel.springboot</groupId>
>>>   <artifactId>camel-spring-boot-dependencies</artifactId>
>>>   <version>${camel.version}</version>
>>>   <type>pom</type>
>>>   <scope>import</scope>
>>> </dependency>
>>> and then these dependencies
>>>
>>> <dependency>
>>>   <groupId>org.apache.camel.springboot</groupId>
>>>   <artifactId>camel-quartz-starter</artifactId>
>>> </dependency>
>>> <dependency>
>>>   <groupId>org.apache.camel.springboot</groupId>
>>>   <artifactId>camel-sql-starter</artifactId>
>>> </dependency>
>>> <dependency>
>>>   <groupId>org.apache.camel.springboot</groupId>
>>>   <artifactId>camel-activemq-starter</artifactId>
>>> </dependency>
>>> <dependency>
>>>   <groupId>org.apache.camel.springboot</groupId>
>>>   <artifactId>camel-direct-starter</artifactId>
>>> </dependency>
>>> <dependency>
>>>   <groupId>org.apache.camel.springboot</groupId>
>>>   <artifactId>camel-bean-starter</artifactId>
>>> </dependency>
>>>
>>> but in my build I see several camel dependencies included in the war
>> file that I haven’t specified, esp. camel-core, camel-main… The ones
>> included are stated here:
>>>
>>>
>> https://camel.apache.org/manual/latest/camel-3-migration-guide.html#_modularization_of_camel_core
>>>
>>> How can I make it more modular and only include dependencies I have
>> stated?
>>>
>>>
>>> M
>>>
>>
>>