You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by Bruce Snyder <br...@gmail.com> on 2009/09/29 22:01:48 UTC

Creation of an activemq-client.jar artifact

In the past, folks have asked me about an ActiveMQ client jar file.
Something that's lighter weight and immediately identifiable as the
artifact to be used from the client side instead of poking around
trying to figure out which jars to use. Today, someone asked me about
this very thing again, so I'd like to discuss the idea. IMO, if it
helps users, then it's worth doing.

Assuming that we agree to create such a jar file, I see two ways to do it:

1) Manually hack together an activemq-client.jar using a Maven
assembly. I've done this in the past on other projects and it's
usually terribly brittle and error-prone.

2) Create a new module named activemq-client and begin moving classes
out of activemq-core into the new module. This would mean that the
activemq-core module would have a dependency on the activemq-client,
but that's minor. In fact, improved modularization will only improve
the codebase. If you've ever looked at the ActivMQ codebase in
Structure101 you know badly tangled it is.

Thoughts?

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

ActiveMQ in Action: http://bit.ly/2je6cQ
Blog: http://bruceblog.org/
Twitter: http://twitter.com/brucesnyder

Re: Creation of an activemq-client.jar artifact

Posted by Bruce Snyder <br...@gmail.com>.
On Thu, Oct 1, 2009 at 10:35 AM, Hiram Chirino <ch...@gmail.com> wrote:
> Yeah.. those 2 are kinda at odds.  The simplest possible solution is
> to give the an uber jar with all the features that way they don't have
> to think about addition jars need to enable extra features.  While
> making a slim jar is usually all about cutting out optional features.

Agreed, one of the tasks is to determine is which features to include.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

ActiveMQ in Action: http://bit.ly/2je6cQ
Blog: http://bruceblog.org/
Twitter: http://twitter.com/brucesnyder

Re: Creation of an activemq-client.jar artifact

Posted by Hiram Chirino <ch...@gmail.com>.
Yeah.. those 2 are kinda at odds.  The simplest possible solution is
to give the an uber jar with all the features that way they don't have
to think about addition jars need to enable extra features.  While
making a slim jar is usually all about cutting out optional features.

Regards,
Hiram

On Thu, Oct 1, 2009 at 12:22 PM, Bruce Snyder <br...@gmail.com> wrote:
> On Thu, Oct 1, 2009 at 9:58 AM, Hiram Chirino <ch...@gmail.com> wrote:
>> Is it a size of the jar problem?  Or is it I just need 1 jar
>> dependency type problem?  Or is I can't tell which one I should pick
>> problem?
>
> The questions I have received were mainly about simplicity regarding
> what is required on the client side. Additional comments indicate that
> folks would like the smallest jar possible.
>
> Bruce
> --
> perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
> );'
>
> ActiveMQ in Action: http://bit.ly/2je6cQ
> Blog: http://bruceblog.org/
> Twitter: http://twitter.com/brucesnyder
>



-- 
Regards,
Hiram

Blog: http://hiramchirino.com

Open Source SOA
http://fusesource.com/

Re: Creation of an activemq-client.jar artifact

Posted by Bruce Snyder <br...@gmail.com>.
On Thu, Oct 1, 2009 at 9:58 AM, Hiram Chirino <ch...@gmail.com> wrote:
> Is it a size of the jar problem?  Or is it I just need 1 jar
> dependency type problem?  Or is I can't tell which one I should pick
> problem?

The questions I have received were mainly about simplicity regarding
what is required on the client side. Additional comments indicate that
folks would like the smallest jar possible.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

ActiveMQ in Action: http://bit.ly/2je6cQ
Blog: http://bruceblog.org/
Twitter: http://twitter.com/brucesnyder

Re: Creation of an activemq-client.jar artifact

Posted by Hiram Chirino <ch...@gmail.com>.
Is it a size of the jar problem?  Or is it I just need 1 jar
dependency type problem?  Or is I can't tell which one I should pick
problem?

Regards,
Hiram

On Tue, Sep 29, 2009 at 4:01 PM, Bruce Snyder <br...@gmail.com> wrote:
> In the past, folks have asked me about an ActiveMQ client jar file.
> Something that's lighter weight and immediately identifiable as the
> artifact to be used from the client side instead of poking around
> trying to figure out which jars to use. Today, someone asked me about
> this very thing again, so I'd like to discuss the idea. IMO, if it
> helps users, then it's worth doing.
>
> Assuming that we agree to create such a jar file, I see two ways to do it:
>
> 1) Manually hack together an activemq-client.jar using a Maven
> assembly. I've done this in the past on other projects and it's
> usually terribly brittle and error-prone.
>
> 2) Create a new module named activemq-client and begin moving classes
> out of activemq-core into the new module. This would mean that the
> activemq-core module would have a dependency on the activemq-client,
> but that's minor. In fact, improved modularization will only improve
> the codebase. If you've ever looked at the ActivMQ codebase in
> Structure101 you know badly tangled it is.
>
> Thoughts?
>
> Bruce
> --
> perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
> );'
>
> ActiveMQ in Action: http://bit.ly/2je6cQ
> Blog: http://bruceblog.org/
> Twitter: http://twitter.com/brucesnyder
>



-- 
Regards,
Hiram

Blog: http://hiramchirino.com

Open Source SOA
http://fusesource.com/

RE: Creation of an activemq-client.jar artifact

Posted by Colin MacNaughton <co...@gmail.com>.
Hi Bruce, 

I too would like there to be an activemq-client.jar, but it looks like a
large enough effort to hold off on until 6.0 where we might be able to do
some of the refactoring you mention in option 2. 

Colin

-----Original Message-----
From: Bruce Snyder [mailto:bruce.snyder@gmail.com] 
Sent: Tuesday, September 29, 2009 1:02 PM
To: dev@activemq.apache.org
Subject: Creation of an activemq-client.jar artifact

In the past, folks have asked me about an ActiveMQ client jar file.
Something that's lighter weight and immediately identifiable as the
artifact to be used from the client side instead of poking around
trying to figure out which jars to use. Today, someone asked me about
this very thing again, so I'd like to discuss the idea. IMO, if it
helps users, then it's worth doing.

Assuming that we agree to create such a jar file, I see two ways to do it:

1) Manually hack together an activemq-client.jar using a Maven
assembly. I've done this in the past on other projects and it's
usually terribly brittle and error-prone.

2) Create a new module named activemq-client and begin moving classes
out of activemq-core into the new module. This would mean that the
activemq-core module would have a dependency on the activemq-client,
but that's minor. In fact, improved modularization will only improve
the codebase. If you've ever looked at the ActivMQ codebase in
Structure101 you know badly tangled it is.

Thoughts?

Bruce
-- 
perl -e 'print
unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

ActiveMQ in Action: http://bit.ly/2je6cQ
Blog: http://bruceblog.org/
Twitter: http://twitter.com/brucesnyder