You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Karl Heinz Marbaise <kh...@gmx.de> on 2012/11/13 09:23:35 UTC

plexus-utils / maven-shared-utils / commons-io

Hi,

i have a question concerning the plexus-utils/maven-shared-utils. During the investigation of a bug in appassembler-plugin (http://jira.codehaus.org/browse/MAPPASM-187). I have seen that in plexus-utils (3.0.7) the method FileUtils.copyDirectory() seemed to be not working. The same as in maven-shared-utils. After checking maven-shared-utils (0.1) i have detected that the unit tests which are checking the copyDirectory part a currently set to @Ignore. 

I have found a solution in using commons-io package (2.4) but this would result in a JDK 1.5+ dependency (Does someone know a version of commons-io which works with JDK 1.4+? . The other question is why we don't use commons-io directly (apart of the optional dependency in maven-shared-utils) instead of rewriting things in maven-shared-utils or did i misunderstand the intention of maven-shared-utils?

Are there any particular reasons not to to use commons-io package directly (as a dependency for a plugin)?

Can someone enlighten me a little bit?

Thanks in advance.

Kind regards
Karl-Heinz Marbaise
-- 
SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
Hauptstrasse 177                     USt.IdNr: DE191347579
52146 Würselen                           http://www.soebes.de



-- 
-- 
SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
Hauptstrasse 177                     USt.IdNr: DE191347579
52146 Würselen                           http://www.soebes.de


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


Re: plexus-utils / maven-shared-utils / commons-io

Posted by Karl Heinz Marbaise <kh...@gmx.de>.
Hi Stephen,

> What is the minimum version of Maven that you are supporting your plugin
> on?
> 
> Maven 2.0.x => JDK 1.4 is the theoretical minimum
> Maven 2.2.x => JDK 1.5 is the theoretical minimum

Currently i would like to keep the support for Maven 2.0.X with the appassembler-maven-plugin (for the 1.4 release; I can break it with 2.0 release).

> >
> > Are there any particular reasons not to to use commons-io package
> directly
> > (as a dependency for a plugin)?
> >
> 
>  In a plugin, no reason at all. In fact it is probably the best idea!

So my decision will be to use commons-io directly instead of plexus-utils nor maven-shared-utils.

> > Can someone enlighten me a little bit?
> >
> >
> Hope I have
Thanks very much ...The bulp is very bright ;-)

Kind regards
Karl-Heinz Marbaise
-- 
MfG
Karl Heinz Marbaise
-- 
SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
Hauptstrasse 177                     USt.IdNr: DE191347579
52146 Würselen                           http://www.soebes.de


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


Re: plexus-utils / maven-shared-utils / commons-io

Posted by Stephen Connolly <st...@gmail.com>.
On 13 November 2012 08:23, Karl Heinz Marbaise <kh...@gmx.de> wrote:

> Hi,
>
> i have a question concerning the plexus-utils/maven-shared-utils. During
> the investigation of a bug in appassembler-plugin (
> http://jira.codehaus.org/browse/MAPPASM-187). I have seen that in
> plexus-utils (3.0.7) the method FileUtils.copyDirectory() seemed to be not
> working. The same as in maven-shared-utils. After checking
> maven-shared-utils (0.1) i have detected that the unit tests which are
> checking the copyDirectory part a currently set to @Ignore.
>
> I have found a solution in using commons-io package (2.4) but this would
> result in a JDK 1.5+ dependency (Does someone know a version of commons-io
> which works with JDK 1.4+?


What is the minimum version of Maven that you are supporting your plugin on?

Maven 2.0.x => JDK 1.4 is the theoretical minimum
Maven 2.2.x => JDK 1.5 is the theoretical minimum

We have not introduced a higher minimum yet for Maven, but I would suspect
it would be at least Maven 3.2 before that would happen (given the current
roadmap for 3.1)


> . The other question is why we don't use commons-io directly (apart of the
> optional dependency in maven-shared-utils) instead of rewriting things in
> maven-shared-utils or did i misunderstand the intention of
> maven-shared-utils?
>

maven-shared-utils is (as I understand it) for use in the core. We use
commons-io there, but shade it so that plugins will not have classloading
conflicts.

maven-shared-utils is an attempt to wean core off of plexus-utils. So in
some cases features/bugs in p-u have been reproduced in order to retain
current behaviour, but where possible the commons-* libraries have been
used.

m-s-u started out of an effort I started in the sandbox to provide a
rewrite of p-u based off of commons-* so that plugins could wean themselves
off of p-u... however there seems to have been a bit of a morph in that
work (no harm) and that is m-s-u


>
> Are there any particular reasons not to to use commons-io package directly
> (as a dependency for a plugin)?
>

 In a plugin, no reason at all. In fact it is probably the best idea!


> Can someone enlighten me a little bit?
>
>
Hope I have


> Thanks in advance.
>
> Kind regards
> Karl-Heinz Marbaise
> --
> SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
> Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
> Hauptstrasse 177                     USt.IdNr: DE191347579
> 52146 Würselen                           http://www.soebes.de
>
>
>
> --
> --
> SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
> Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
> Hauptstrasse 177                     USt.IdNr: DE191347579
> 52146 Würselen                           http://www.soebes.de
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>

Re: plexus-utils / maven-shared-utils / commons-io

Posted by Gary Gregory <ga...@gmail.com>.
On Tue, Nov 13, 2012 at 3:23 AM, Karl Heinz Marbaise <kh...@gmx.de>wrote:

> Hi,
>
> i have a question concerning the plexus-utils/maven-shared-utils. During
> the investigation of a bug in appassembler-plugin (
> http://jira.codehaus.org/browse/MAPPASM-187). I have seen that in
> plexus-utils (3.0.7) the method FileUtils.copyDirectory() seemed to be not
> working. The same as in maven-shared-utils. After checking
> maven-shared-utils (0.1) i have detected that the unit tests which are
> checking the copyDirectory part a currently set to @Ignore.
>
> I have found a solution in using commons-io package (2.4) but this would
> result in a JDK 1.5+ dependency (Does someone know a version of commons-io
> which works with JDK 1.4+?


Commons IO 2.4 requires Java 6
Commons IO 2.0 requires Java 5
Commons IO 1.4 requires Java 1.3

Gary


> . The other question is why we don't use commons-io directly (apart of the
> optional dependency in maven-shared-utils) instead of rewriting things in
> maven-shared-utils or did i misunderstand the intention of
> maven-shared-utils?
>
> Are there any particular reasons not to to use commons-io package directly
> (as a dependency for a plugin)?
>
> Can someone enlighten me a little bit?
>
> Thanks in advance.
>
> Kind regards
> Karl-Heinz Marbaise
> --
> SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
> Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
> Hauptstrasse 177                     USt.IdNr: DE191347579
> 52146 Würselen                           http://www.soebes.de
>
>
>
> --
> --
> SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
> Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
> Hauptstrasse 177                     USt.IdNr: DE191347579
> 52146 Würselen                           http://www.soebes.de
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Re: plexus-utils / maven-shared-utils / commons-io

Posted by Aleksandar Kurtakov <ak...@redhat.com>.
----- Original Message -----
> From: "Karl Heinz Marbaise" <kh...@gmx.de>
> To: dev@maven.apache.org
> Sent: Tuesday, November 13, 2012 10:23:35 AM
> Subject: plexus-utils / maven-shared-utils / commons-io
> 
> Hi,
> 
> i have a question concerning the plexus-utils/maven-shared-utils.
> During the investigation of a bug in appassembler-plugin
> (http://jira.codehaus.org/browse/MAPPASM-187). I have seen that in
> plexus-utils (3.0.7) the method FileUtils.copyDirectory() seemed to
> be not working. The same as in maven-shared-utils. After checking
> maven-shared-utils (0.1) i have detected that the unit tests which
> are checking the copyDirectory part a currently set to @Ignore.
> 
> I have found a solution in using commons-io package (2.4) but this
> would result in a JDK 1.5+ dependency (Does someone know a version
> of commons-io which works with JDK 1.4+? . The other question is why
> we don't use commons-io directly (apart of the optional dependency
> in maven-shared-utils) instead of rewriting things in
> maven-shared-utils or did i misunderstand the intention of
> maven-shared-utils?

Isn't it really time to give up on 1.4 ? With 1.6 being EOLed recently jumping on 1.5 seems resonable enough to me. 
This would open the door for using many things provided by the VM instead of relying on some third party libs and even reduce the "downloads the internet" problem. Reducing the dependencies makes things a lot easier for a number of reasons like:
 - less legal audit and easier approval - yes, many organizations require audit of every single version referenced (not project). E.g. at Eclipse foundation if your build tool uses 3 maven plugins and they use 3 different plexus-utils versions - all 3 has to be reviewed.
 - easier to build - if there is a source only builds policy using old libraries complicates things by:
   * old libs not buildable with newer JVM and need heavy patching for this to happen
   * build cycles - the lib needs maven to build by maven needs the lib in order to be build

I know this might not sound too compelling reasons to many but it's huge time consuming effort which prevents many from doing other improvements to the Java stack (incl. Maven + plugins).

Alexander Kurtakov
Red Hat Eclipse team

> 
> Are there any particular reasons not to to use commons-io package
> directly (as a dependency for a plugin)?
> 
> Can someone enlighten me a little bit?
> 
> Thanks in advance.
> 
> Kind regards
> Karl-Heinz Marbaise
> --
> SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
> Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
> Hauptstrasse 177                     USt.IdNr: DE191347579
> 52146 Würselen                           http://www.soebes.de
> 
> 
> 
> --
> --
> SoftwareEntwicklung Beratung Schulung    Tel.: +49 (0) 2405 / 415 893
> Dipl.Ing.(FH) Karl Heinz Marbaise        ICQ#: 135949029
> Hauptstrasse 177                     USt.IdNr: DE191347579
> 52146 Würselen                           http://www.soebes.de
> 
> 
> ---------------------------------------------------------------------
> 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