[ 
https://issues.apache.org/jira/browse/CAMEL-13201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16871045#comment-16871045
 ] 

Claus Ibsen commented on CAMEL-13201:
-------------------------------------

I got a prototype up with a new camel-core-engine which is just a JAR with many 
excludes from camel-core.

And I modified the camel-example-main to have as few JARs as possible
{code}
[INFO] ------------< org.apache.camel.example:camel-example-main >-------------
[INFO] Building Camel :: Example :: Main 3.0.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- camel-maven-plugin:3.0.0-SNAPSHOT:run (default-cli) @ 
camel-example-main ---
[INFO] You can skip tests from the command line using: mvn camel:run 
-Dmaven.test.skip=true
[INFO] Using custom org.apache.camel.example.MyApplication to initiate a 
CamelContext
[INFO] Classpath:
[INFO]   
/Users/davsclaus/workspace/camel/examples/camel-example-main/target/classes/
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-core-engine/3.0.0-SNAPSHOT/camel-core-engine-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-api/3.0.0-SNAPSHOT/camel-api-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-util/3.0.0-SNAPSHOT/camel-util-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-management-api/3.0.0-SNAPSHOT/camel-management-api-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-support/3.0.0-SNAPSHOT/camel-support-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-core/3.0.0-SNAPSHOT/camel-core-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-base/3.0.0-SNAPSHOT/camel-base-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-properties/3.0.0-SNAPSHOT/camel-properties-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-main/3.0.0-SNAPSHOT/camel-main-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-bean/3.0.0-SNAPSHOT/camel-bean-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/camel/camel-quartz2/3.0.0-SNAPSHOT/camel-quartz2-3.0.0-SNAPSHOT.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/quartz-scheduler/quartz/2.3.1/quartz-2.3.1.jar
[INFO]   
/Users/davsclaus/.m2/repository/com/mchange/mchange-commons-java/0.2.15/mchange-commons-java-0.2.15.jar
[INFO]   
/Users/davsclaus/.m2/repository/com/zaxxer/HikariCP-java7/2.4.13/HikariCP-java7-2.4.13.jar
[INFO]   
/Users/davsclaus/.m2/repository/com/mchange/c3p0/0.9.5.4/c3p0-0.9.5.4.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/logging/log4j/log4j-api/2.11.2/log4j-api-2.11.2.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/logging/log4j/log4j-core/2.11.2/log4j-core-2.11.2.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.11.2/log4j-slf4j-impl-2.11.2.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar
[INFO]   
/Users/davsclaus/.m2/repository/org/apache/logging/log4j/log4j-jul/2.11.2/log4j-jul-2.11.2.jar
[INFO] Starting Camel ...
{code}

The profiler says that 3543 classes is loaded vs 3785 classes. Now there is 
many classes optional on the classpath as they are components not in use, so 
the reduced number of classes is smaller, but they take up disk-space and 
memory space the more classes we have on classpath. 


> camel3 - camel-core-minimal - To have core with as few dependencies as 
> possible
> -------------------------------------------------------------------------------
>
>                 Key: CAMEL-13201
>                 URL: https://issues.apache.org/jira/browse/CAMEL-13201
>             Project: Camel
>          Issue Type: Task
>          Components: build system
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>            Priority: Major
>             Fix For: 3.0.0, 3.0.0.M4
>
>
> The camel-core includes all the core components from 2.x. However you may 
> want to choose precisely only the core components you need.
> So with a camel-core-minimal you can then add the ones afterwards, such as 
> log,timer and file etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to