Re: [m2] Dependency Ordering Headache

2007-05-03 Thread gridplan

Thanks everyone for your input.  I'll be keeping an eye on
http://jira.codehaus.org/browse/MNG-1412.

If anyone has instructions for where to find the source for
maven-artifact-ant and how to build it, I'd love to hear from you.  I may
need to figure out how to patch this in my environment before an official
release becomes available.

-kevin 
-- 
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10299839
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-03 Thread Jose Alberto Fernandez

When I read things like this, I think some of the Maven people have never
been working in the real corporate world. You cannot expect a project to
stop for 6 month waiting for the next full release of Weblogic or any other
product, just because there is no way on Maven to take a product patch into
account.

Try telling your manager that his flagship project must be delay half a year
because your building tool does not like the way Weblogic distributes an
emergency patch. I mean how fast would you think it would take to be asked
to clean your desk and leave the building?

J.A. 


Wayne Fay wrote:
 
 As a Weblogic customer, I'd complain until they resolve this issue.
 
 I agree entirely with Graham -- the fact that your dependency JARs
 must be ordered in a particular way to get a successful build should
 not be acceptable to you.
 
 Wayne
 
 

-- 
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10305209
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-03 Thread Wayne Fay

I work in the corporate world every day, friend.

As for incorporating a patch like this, if it is a fairly trivial
patch (many are just a couple fixed class files), I would personally
just unpack the affected jars, copy the patched files in, and repack
them with adjusted version numbers. I'm not saying this is ideal, but
its not a 6mo delay either...

Wayne

On 5/3/07, Jose Alberto Fernandez [EMAIL PROTECTED] wrote:


When I read things like this, I think some of the Maven people have never
been working in the real corporate world. You cannot expect a project to
stop for 6 month waiting for the next full release of Weblogic or any other
product, just because there is no way on Maven to take a product patch into
account.

Try telling your manager that his flagship project must be delay half a year
because your building tool does not like the way Weblogic distributes an
emergency patch. I mean how fast would you think it would take to be asked
to clean your desk and leave the building?

J.A.


Wayne Fay wrote:

 As a Weblogic customer, I'd complain until they resolve this issue.

 I agree entirely with Graham -- the fact that your dependency JARs
 must be ordered in a particular way to get a successful build should
 not be acceptable to you.

 Wayne



--
View this message in context:
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10305209
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-03 Thread Jose Alberto Fernandez

 Yes indeed, you could repackage the libraries by hand. But then WL can blame
you for any further problem as you are hand crafting the libraries as oppose
to using them as provided. Never mind if the library involves signed classes
of any sort.

I am not trying to defend WL or anyone else. But where I get a little of a
peeve is when people say no the only way is this way and everyone else in
the world is wrong and no other way should be allowed. That only slows down
adoption.

And Maven has very many great things for that to happen.

J.A


Wayne Fay wrote:
 
 I work in the corporate world every day, friend.
 
 As for incorporating a patch like this, if it is a fairly trivial
 patch (many are just a couple fixed class files), I would personally
 just unpack the affected jars, copy the patched files in, and repack
 them with adjusted version numbers. I'm not saying this is ideal, but
 its not a 6mo delay either...
 
 Wayne
 
 On 5/3/07, Jose Alberto Fernandez [EMAIL PROTECTED] wrote:

 When I read things like this, I think some of the Maven people have never
 been working in the real corporate world. You cannot expect a project to
 stop for 6 month waiting for the next full release of Weblogic or any
 other
 product, just because there is no way on Maven to take a product patch
 into
 account.

 Try telling your manager that his flagship project must be delay half a
 year
 because your building tool does not like the way Weblogic distributes an
 emergency patch. I mean how fast would you think it would take to be
 asked
 to clean your desk and leave the building?

 J.A.


 Wayne Fay wrote:
 
  As a Weblogic customer, I'd complain until they resolve this issue.
 
  I agree entirely with Graham -- the fact that your dependency JARs
  must be ordered in a particular way to get a successful build should
  not be acceptable to you.
 
  Wayne
 
 

 --
 View this message in context:
 http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10305209
 Sent from the Maven - Users mailing list archive at Nabble.com.


 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]


 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 

-- 
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10308039
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-01 Thread Andrew Williams
I may be speaking out of turn here, but I think that maven does not  
have a lack of order,

it simply does not allow you, the user, to control the order.
Thus builds are reproducable reliably, the order does not change from  
one build to another.


This, however, is academic. If your classpath requires order then it  
means there are conflicts.
Conflicts are never good - let us imagine for a moment we have an  
interface com.mypackage.MyInter
Now, this is defined in jarA and jarB and jarB contains a class  
com.other.MyObj.


It follows that if at some point in time the signature of MyInter  
changes in jarA and yet jarA
is first in the classpath then the class com.other.MyObj will fail  
to load, as it no longer implements MyInter,

even though it has defined it correctly internally.

Badness.

Andy

On 1 May 2007, at 00:14, gridplan wrote:



Granted.  There is obviously more than one way to roll out a fix.   
But in my
view it's not WebLogic's job to change their approach because Maven  
does not
embrace the notion of an ordered classpath.  I don't hold as self- 
evident
the idea that Builds which depend upon the ordering of artifacts  
in the
classpath is one of those things which are certainly not a best  
practice.
There is nothing wrong with order.  It is central to what it means  
to be a
Java classpath.  It is how Java's classloader knows where to look  
for the
classes it loads.  It's the key to predictability, which is not  
only a good

thing, it is essential to what I'm trying to do.  Unfortunately, the
classpath Maven generates is not always so well-behaved and has  
caused me
some major grief.  Hard as it may be to believe, I want to like  
Maven.  But
I also want some control over it when it demonstrates its ability  
to get

things wrong.

-kevin


I disagree. The Maven model would simply require that Weblogic produce
updated JARs with the patches applied, and you would roll the versions
in the poms (or simply import a single pom provided by Weblogic where
they manage versions and artifacts for you) and rebuild your project.
This sounds far easier (and far more consistent) than depending upon
jars which may or may not currently exist in a given Weblogic build.

Maven is not simply another build tool like Ant or Make. It is also a
vehicle for presenting and delivering build management best practices
as interpreted by the Maven Dev team/PMC. Builds which depend upon the
ordering of artifacts in the classpath is one of those things which
are certainly not a best practice, just like code patches, and so
these features are not available.

As always, this is simply my opinion. Someone who is actually in the
Maven Dev team may respond and say I'm completely wrong on these
issues, and that support for patches and ordering of classpath items
is on the TODO list, but I generally doubt it. ;-)

Wayne

--
View this message in context: http://www.nabble.com/-m2--Dependency- 
Ordering-Headache-tf3668646s177.html#a10262265

Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-01 Thread Wendy Smoak

On 5/1/07, Andrew Williams [EMAIL PROTECTED] wrote:

I may be speaking out of turn here, but I think that maven does not
have a lack of order,
it simply does not allow you, the user, to control the order.
Thus builds are reproducable reliably, the order does not change from
one build to another.


And yet the OP says that the order changes on Solaris vs. WindowsXP...

There is some discussion of (and 20+ votes for) dependency sorting in
classpath on http://jira.codehaus.org/browse/MNG-1412 .

--
Wendy

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-01 Thread Andrew Williams
My apologies, I must just have been lucky with the orders being  
static on my projects.


Andy

On 1 May 2007, at 13:50, Wendy Smoak wrote:


On 5/1/07, Andrew Williams [EMAIL PROTECTED] wrote:

I may be speaking out of turn here, but I think that maven does not
have a lack of order,
it simply does not allow you, the user, to control the order.
Thus builds are reproducable reliably, the order does not change from
one build to another.


And yet the OP says that the order changes on Solaris vs. WindowsXP...

There is some discussion of (and 20+ votes for) dependency sorting in
classpath on http://jira.codehaus.org/browse/MNG-1412 .

--
Wendy

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-05-01 Thread Wayne Fay

On 5/1/07, Wendy Smoak [EMAIL PROTECTED] wrote:

There is some discussion of (and 20+ votes for) dependency sorting in
classpath on http://jira.codehaus.org/browse/MNG-1412 .


Now its 30+ votes... And appears scheduled for 2.1.x.

Wayne

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-04-30 Thread Graham Leggett
On Mon, April 30, 2007 11:15 am, gridplan wrote:

 I'm having a terrible time trying to convert a project that uses Ant
 to
 one that uses maven (2.0.6).   The classpath in my build.xml has a
 specific
 ordering of Jars that must be followed in order for it to compile.

To be honest, I think there is your problem.

If order matters, it's probably because some jars contain conflicting code
with other jars. The solution here is to fix the jars, not work around it
in the build system.

I have seen a number of projects who, for convenience, package up all
their dependencies into an uberjar. Works great if their uberjar is your
only dependency, but is a complete nightmare if you depend on code
externally that is included in the uberjar. Rather specify the build
system dependencies properly in maven, and this problem will go away.

Regards,
Graham
--





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-04-30 Thread gridplan

Hi Graham,
I don't think I can disentangle the dependencies so easily.  With
WebLogic server, the way one sets up a build environment is to source a file
(usually setDomainEnv.cmd or setDomainEnv.sh -- the same file incidentally
their app server sources on start-up).  It adds a dozen or so WebLogic jars
to the classpath (ignore the variables):

$BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath/weblogic_patch.jar
$BEA_HOME/jrockit90_150_04/lib/tools.jar
$WL_HOME/server/lib/weblogic_sp.jar
$WL_HOME/server/lib/weblogic.jar
$WL_HOME/server/lib/webservices.jar
$WL_HOME/servicebus/lib/sb-public.jar
$WL_HOME/servicebus/lib/sb-common.jar
$WL_HOME/servicebus/lib/sb-internal.jar
$WL_HOME/servicebus/lib/sb-core.jar
$WL_HOME/integration/common/lib/wli-common.jar
$WL_HOME/integration/common/lib/wli-common-public.jar
$WL_HOME/platform/lib/p13n/p13n_system.jar
$WL_HOME/common/p13n/lib/p13n_common.jar
$WL_HOME/server/lib/wlxbean.jar
$WL_HOME/server/lib/apachexmlbeansutil.jar
$WL_HOME/server/lib/xquery.jar
$WL_HOME/server/lib/binxml.jar
$WL_HOME/common/lib/log4j.jar
$WL_HOME/servicebus/lib/uddi_library.jar
$WL_HOME/servicebus/lib/uddi_client_v3.jar
$WL_HOME/servicebus/lib/version.jar
$WL_HOME/common/eval/pointbase/lib/pbembedded51.jar
$WL_HOME/common/eval/pointbase/lib/pbupgrade51.jar
$WL_HOME/common/eval/pointbase/lib/pbclient51.jar
$WL_HOME/server/lib/xqrl.jar

At that point a build.xml is free to reference any WebLogic class or
WebLogic-specific Ant task it needs.  I can't begin to guess why WebLogic
chose this particular ordering of Jars, but it is apparently crucial.  If I
deviate from this prescribed order, the compilation will fail.

Best,
-kevin


Graham Leggett wrote:
 
 On Mon, April 30, 2007 11:15 am, gridplan wrote:
 
 To be honest, I think there is your problem.
 
 If order matters, it's probably because some jars contain conflicting code
 with other jars. The solution here is to fix the jars, not work around it
 in the build system.
 
 I have seen a number of projects who, for convenience, package up all
 their dependencies into an uberjar. Works great if their uberjar is your
 only dependency, but is a complete nightmare if you depend on code
 externally that is included in the uberjar. Rather specify the build
 system dependencies properly in maven, and this problem will go away.
 
 Regards,
 Graham
 --
 
 
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 

-- 
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10252984
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-04-30 Thread Wayne Fay

As a Weblogic customer, I'd complain until they resolve this issue.

I agree entirely with Graham -- the fact that your dependency JARs
must be ordered in a particular way to get a successful build should
not be acceptable to you.

Wayne

On 4/30/07, gridplan [EMAIL PROTECTED] wrote:


Hi Graham,
   I don't think I can disentangle the dependencies so easily.  With
WebLogic server, the way one sets up a build environment is to source a file
(usually setDomainEnv.cmd or setDomainEnv.sh -- the same file incidentally
their app server sources on start-up).  It adds a dozen or so WebLogic jars
to the classpath (ignore the variables):

$BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath/weblogic_patch.jar
$BEA_HOME/jrockit90_150_04/lib/tools.jar
$WL_HOME/server/lib/weblogic_sp.jar
$WL_HOME/server/lib/weblogic.jar
$WL_HOME/server/lib/webservices.jar
$WL_HOME/servicebus/lib/sb-public.jar
$WL_HOME/servicebus/lib/sb-common.jar
$WL_HOME/servicebus/lib/sb-internal.jar
$WL_HOME/servicebus/lib/sb-core.jar
$WL_HOME/integration/common/lib/wli-common.jar
$WL_HOME/integration/common/lib/wli-common-public.jar
$WL_HOME/platform/lib/p13n/p13n_system.jar
$WL_HOME/common/p13n/lib/p13n_common.jar
$WL_HOME/server/lib/wlxbean.jar
$WL_HOME/server/lib/apachexmlbeansutil.jar
$WL_HOME/server/lib/xquery.jar
$WL_HOME/server/lib/binxml.jar
$WL_HOME/common/lib/log4j.jar
$WL_HOME/servicebus/lib/uddi_library.jar
$WL_HOME/servicebus/lib/uddi_client_v3.jar
$WL_HOME/servicebus/lib/version.jar
$WL_HOME/common/eval/pointbase/lib/pbembedded51.jar
$WL_HOME/common/eval/pointbase/lib/pbupgrade51.jar
$WL_HOME/common/eval/pointbase/lib/pbclient51.jar
$WL_HOME/server/lib/xqrl.jar

At that point a build.xml is free to reference any WebLogic class or
WebLogic-specific Ant task it needs.  I can't begin to guess why WebLogic
chose this particular ordering of Jars, but it is apparently crucial.  If I
deviate from this prescribed order, the compilation will fail.

Best,
-kevin


Graham Leggett wrote:

 On Mon, April 30, 2007 11:15 am, gridplan wrote:

 To be honest, I think there is your problem.

 If order matters, it's probably because some jars contain conflicting code
 with other jars. The solution here is to fix the jars, not work around it
 in the build system.

 I have seen a number of projects who, for convenience, package up all
 their dependencies into an uberjar. Works great if their uberjar is your
 only dependency, but is a complete nightmare if you depend on code
 externally that is included in the uberjar. Rather specify the build
 system dependencies properly in maven, and this problem will go away.

 Regards,
 Graham
 --





 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




--
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10252984
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-04-30 Thread gridplan

Hi Wayne,
Thank you for responding.  I would say it's more a shortcoming of Maven
if I'm not given control over how Jars are ordered on the classpath.
Sometimes it's necessary to specify the order in which Jars appear on the
classpath.  For example, the first Jar,

$BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath/weblogic_patch.jar

is a placeholder.  It doesn't even exist on my system.  But I see why
WebLogic put it there.  If they ever needed to issue a patch, they'd want
the Jar containing those patched classes to be picked up first.  If I wanted
to do the equivalent in my pom.xml, how would I order the dependencies so
that Jar was picked up first?

What troubles me even more than my seeming lack of control over ordering is
the fact that the same POM produces a different classpath under Solaris than
it does under Windows XP.  In my view, the ordering should be consistent
from OS to OS.

Thanks again,
-kevin


As a Weblogic customer, I'd complain until they resolve this issue.

I agree entirely with Graham -- the fact that your dependency JARs
must be ordered in a particular way to get a successful build should
not be acceptable to you.

Wayne

On 4/30/07, gridplan [EMAIL PROTECTED] wrote:

 Hi Graham,
I don't think I can disentangle the dependencies so easily.  With
 WebLogic server, the way one sets up a build environment is to source a
 file
 (usually setDomainEnv.cmd or setDomainEnv.sh -- the same file incidentally
 their app server sources on start-up).  It adds a dozen or so WebLogic
 jars
 to the classpath (ignore the variables):

 $BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath/weblogic_patch.jar
 $BEA_HOME/jrockit90_150_04/lib/tools.jar
 $WL_HOME/server/lib/weblogic_sp.jar
 $WL_HOME/server/lib/weblogic.jar
 $WL_HOME/server/lib/webservices.jar
 $WL_HOME/servicebus/lib/sb-public.jar
 $WL_HOME/servicebus/lib/sb-common.jar
 $WL_HOME/servicebus/lib/sb-internal.jar
 $WL_HOME/servicebus/lib/sb-core.jar
 $WL_HOME/integration/common/lib/wli-common.jar
 $WL_HOME/integration/common/lib/wli-common-public.jar
 $WL_HOME/platform/lib/p13n/p13n_system.jar
 $WL_HOME/common/p13n/lib/p13n_common.jar
 $WL_HOME/server/lib/wlxbean.jar
 $WL_HOME/server/lib/apachexmlbeansutil.jar
 $WL_HOME/server/lib/xquery.jar
 $WL_HOME/server/lib/binxml.jar
 $WL_HOME/common/lib/log4j.jar
 $WL_HOME/servicebus/lib/uddi_library.jar
 $WL_HOME/servicebus/lib/uddi_client_v3.jar
 $WL_HOME/servicebus/lib/version.jar
 $WL_HOME/common/eval/pointbase/lib/pbembedded51.jar
 $WL_HOME/common/eval/pointbase/lib/pbupgrade51.jar
 $WL_HOME/common/eval/pointbase/lib/pbclient51.jar
 $WL_HOME/server/lib/xqrl.jar

 At that point a build.xml is free to reference any WebLogic class or
 WebLogic-specific Ant task it needs.  I can't begin to guess why WebLogic
 chose this particular ordering of Jars, but it is apparently crucial.  If
 I
 deviate from this prescribed order, the compilation will fail.

 Best,
 -kevin

-- 
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10259457
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-04-30 Thread Wayne Fay

I disagree. The Maven model would simply require that Weblogic produce
updated JARs with the patches applied, and you would roll the versions
in the poms (or simply import a single pom provided by Weblogic where
they manage versions and artifacts for you) and rebuild your project.
This sounds far easier (and far more consistent) than depending upon
jars which may or may not currently exist in a given Weblogic build.

Maven is not simply another build tool like Ant or Make. It is also a
vehicle for presenting and delivering build management best practices
as interpreted by the Maven Dev team/PMC. Builds which depend upon the
ordering of artifacts in the classpath is one of those things which
are certainly not a best practice, just like code patches, and so
these features are not available.

As always, this is simply my opinion. Someone who is actually in the
Maven Dev team may respond and say I'm completely wrong on these
issues, and that support for patches and ordering of classpath items
is on the TODO list, but I generally doubt it. ;-)

Wayne

On 4/30/07, gridplan [EMAIL PROTECTED] wrote:


Hi Wayne,
Thank you for responding.  I would say it's more a shortcoming of Maven
if I'm not given control over how Jars are ordered on the classpath.
Sometimes it's necessary to specify the order in which Jars appear on the
classpath.  For example, the first Jar,

$BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath/weblogic_patch.jar

is a placeholder.  It doesn't even exist on my system.  But I see why
WebLogic put it there.  If they ever needed to issue a patch, they'd want
the Jar containing those patched classes to be picked up first.  If I wanted
to do the equivalent in my pom.xml, how would I order the dependencies so
that Jar was picked up first?

What troubles me even more than my seeming lack of control over ordering is
the fact that the same POM produces a different classpath under Solaris than
it does under Windows XP.  In my view, the ordering should be consistent
from OS to OS.

Thanks again,
-kevin


As a Weblogic customer, I'd complain until they resolve this issue.

I agree entirely with Graham -- the fact that your dependency JARs
must be ordered in a particular way to get a successful build should
not be acceptable to you.

Wayne

On 4/30/07, gridplan [EMAIL PROTECTED] wrote:

 Hi Graham,
I don't think I can disentangle the dependencies so easily.  With
 WebLogic server, the way one sets up a build environment is to source a
 file
 (usually setDomainEnv.cmd or setDomainEnv.sh -- the same file incidentally
 their app server sources on start-up).  It adds a dozen or so WebLogic
 jars
 to the classpath (ignore the variables):


$BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath/weblogic_patch.jar
 $BEA_HOME/jrockit90_150_04/lib/tools.jar
 $WL_HOME/server/lib/weblogic_sp.jar
 $WL_HOME/server/lib/weblogic.jar
 $WL_HOME/server/lib/webservices.jar
 $WL_HOME/servicebus/lib/sb-public.jar
 $WL_HOME/servicebus/lib/sb-common.jar
 $WL_HOME/servicebus/lib/sb-internal.jar
 $WL_HOME/servicebus/lib/sb-core.jar
 $WL_HOME/integration/common/lib/wli-common.jar
 $WL_HOME/integration/common/lib/wli-common-public.jar
 $WL_HOME/platform/lib/p13n/p13n_system.jar
 $WL_HOME/common/p13n/lib/p13n_common.jar
 $WL_HOME/server/lib/wlxbean.jar
 $WL_HOME/server/lib/apachexmlbeansutil.jar
 $WL_HOME/server/lib/xquery.jar
 $WL_HOME/server/lib/binxml.jar
 $WL_HOME/common/lib/log4j.jar
 $WL_HOME/servicebus/lib/uddi_library.jar
 $WL_HOME/servicebus/lib/uddi_client_v3.jar
 $WL_HOME/servicebus/lib/version.jar
 $WL_HOME/common/eval/pointbase/lib/pbembedded51.jar
 $WL_HOME/common/eval/pointbase/lib/pbupgrade51.jar
 $WL_HOME/common/eval/pointbase/lib/pbclient51.jar
 $WL_HOME/server/lib/xqrl.jar

 At that point a build.xml is free to reference any WebLogic class or
 WebLogic-specific Ant task it needs.  I can't begin to guess why WebLogic
 chose this particular ordering of Jars, but it is apparently crucial.  If
 I
 deviate from this prescribed order, the compilation will fail.

 Best,
 -kevin

--
View this message in context:
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10259457
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] Dependency Ordering Headache

2007-04-30 Thread gridplan

Granted.  There is obviously more than one way to roll out a fix.  But in my
view it's not WebLogic's job to change their approach because Maven does not
embrace the notion of an ordered classpath.  I don't hold as self-evident
the idea that Builds which depend upon the ordering of artifacts in the
classpath is one of those things which are certainly not a best practice. 
There is nothing wrong with order.  It is central to what it means to be a
Java classpath.  It is how Java's classloader knows where to look for the
classes it loads.  It's the key to predictability, which is not only a good
thing, it is essential to what I'm trying to do.  Unfortunately, the
classpath Maven generates is not always so well-behaved and has caused me
some major grief.  Hard as it may be to believe, I want to like Maven.  But
I also want some control over it when it demonstrates its ability to get
things wrong.

-kevin


I disagree. The Maven model would simply require that Weblogic produce
updated JARs with the patches applied, and you would roll the versions
in the poms (or simply import a single pom provided by Weblogic where
they manage versions and artifacts for you) and rebuild your project.
This sounds far easier (and far more consistent) than depending upon
jars which may or may not currently exist in a given Weblogic build.

Maven is not simply another build tool like Ant or Make. It is also a
vehicle for presenting and delivering build management best practices
as interpreted by the Maven Dev team/PMC. Builds which depend upon the
ordering of artifacts in the classpath is one of those things which
are certainly not a best practice, just like code patches, and so
these features are not available.

As always, this is simply my opinion. Someone who is actually in the
Maven Dev team may respond and say I'm completely wrong on these
issues, and that support for patches and ordering of classpath items
is on the TODO list, but I generally doubt it. ;-)

Wayne

-- 
View this message in context: 
http://www.nabble.com/-m2--Dependency-Ordering-Headache-tf3668646s177.html#a10262265
Sent from the Maven - Users mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] dependency ordering

2005-11-14 Thread Mark Hobson
This discussion kinda overlaps with an issue I raised with the eclipse plugin:

http://jira.codehaus.org/browse/MNG-1412

I think the order should be nearest first, and then the order
specified in the pom.

Mark

On 14/11/05, Nigel Magnay [EMAIL PROTECTED] wrote:
 The artifact being generated is effectively a merge of several other
 artifacts of the same type  - a WAR file. It's important to get the
 ordering right as the overwriting precidence matters.

 I was just thinking of needing an extra bit of user data, much like
 the properties you could put on dependencies in M1 that controlled
 things like whether the file got included in the manifest or not; a
 'proper' ordering of all dependencies does sound harder (and maybe too
 hard to be always right in all circumstances..)

 On 11/14/05, Brett Porter [EMAIL PROTECTED] wrote:
  Can you describe what the relevance of the ordering is? There might be
  something already available.
 
  The suggestion of this tag is tricky, as how does dependencies brought
  in transitively get ordered?
 
  - Brett
 
  On 11/14/05, Nigel Magnay [EMAIL PROTECTED] wrote:
   Hi -
  
   I'm doing some processing with a custom mojo that relies on the
   dependency information to build an artifact, but the order of
   processing is important. Because MavenProject.getArtifacts() returns a
   set, this is unordered with respect to the pom.xml; I was wondering if
   it's possible to add extra information in the pom, something like
  
   ...
   dependency
 groupIdblah/groupId
 artifactIdthing/artifactId
 version3.8.1/version
   order1/order  --
   /dependency
   dependency
 groupIdwoo/groupId
 artifactIdyay/artifactId
 version3/version
  order2/order  --
   /dependency
   ...
  
   Is there a good way of tackling this?
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
  
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] dependency ordering

2005-11-14 Thread Brett Porter
But how does that help in the situation where you declare dependencies
A and B, but both declare a dependency C at the same level? Is C
first, second or third when ordered?

I haven't looked at this issue, but an application should avoid
classpath ordering at all costs.

- Brett

On 11/14/05, Mark Hobson [EMAIL PROTECTED] wrote:
 This discussion kinda overlaps with an issue I raised with the eclipse plugin:

 http://jira.codehaus.org/browse/MNG-1412

 I think the order should be nearest first, and then the order
 specified in the pom.

 Mark

 On 14/11/05, Nigel Magnay [EMAIL PROTECTED] wrote:
  The artifact being generated is effectively a merge of several other
  artifacts of the same type  - a WAR file. It's important to get the
  ordering right as the overwriting precidence matters.
 
  I was just thinking of needing an extra bit of user data, much like
  the properties you could put on dependencies in M1 that controlled
  things like whether the file got included in the manifest or not; a
  'proper' ordering of all dependencies does sound harder (and maybe too
  hard to be always right in all circumstances..)
 
  On 11/14/05, Brett Porter [EMAIL PROTECTED] wrote:
   Can you describe what the relevance of the ordering is? There might be
   something already available.
  
   The suggestion of this tag is tricky, as how does dependencies brought
   in transitively get ordered?
  
   - Brett
  
   On 11/14/05, Nigel Magnay [EMAIL PROTECTED] wrote:
Hi -
   
I'm doing some processing with a custom mojo that relies on the
dependency information to build an artifact, but the order of
processing is important. Because MavenProject.getArtifacts() returns a
set, this is unordered with respect to the pom.xml; I was wondering if
it's possible to add extra information in the pom, something like
   
...
dependency
  groupIdblah/groupId
  artifactIdthing/artifactId
  version3.8.1/version
order1/order  --
/dependency
dependency
  groupIdwoo/groupId
  artifactIdyay/artifactId
  version3/version
   order2/order  --
/dependency
...
   
Is there a good way of tackling this?
   
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
   
   
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
  
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] dependency ordering

2005-11-14 Thread Carsten Ziegeler
I think I general use case for ordered dependencies is when you need two
different versions of one dependency for compilation. For example I have
some utility project that provides functionality for framework A. My
utility project can be used with version 1.x of A and 2.x - as A changed
 incompatible from 1.x to 2.x and as I don't want to split my project
into different versions, I need some classes of 1.x and some of 2.x for
compilation. In this case the ordering is important.

Now, unfortunately, this scenario is not going to work with m2 directly
as m2 only allows one version of a dependency in the classpath :(

Carsten

Nigel Magnay wrote:
 The artifact being generated is effectively a merge of several other
 artifacts of the same type  - a WAR file. It's important to get the
 ordering right as the overwriting precidence matters.
 
 I was just thinking of needing an extra bit of user data, much like
 the properties you could put on dependencies in M1 that controlled
 things like whether the file got included in the manifest or not; a
 'proper' ordering of all dependencies does sound harder (and maybe too
 hard to be always right in all circumstances..)
 
 On 11/14/05, Brett Porter [EMAIL PROTECTED] wrote:
 
Can you describe what the relevance of the ordering is? There might be
something already available.

The suggestion of this tag is tricky, as how does dependencies brought
in transitively get ordered?



-- 
Carsten Ziegeler - Open Source Group, SN AG
http://www.s-und-n.de
http://www.osoco.org/weblogs/rael/

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] dependency ordering

2005-11-14 Thread Nigel Magnay
I was just looking at that and thinking that was probably the way I
should do it.. just seemed a shame that I couldn't attach some
arbitary property inside the dependency tag, but it's no biggie.

Nigel

On 11/14/05, Brett Porter [EMAIL PROTECTED] wrote:
 Right - transitivity defeats the ability to do this.

 What you need to do is specify the order in configuration to your
 plugin (and still declare the dependencies normally).

 wars
   wargroupId:artifactId1/war
   wargroupId:artifactId2/war
 /wars

 From this you can construct an artifact filter pretty easily and
 filter the ${project.artifacts}. This is how the assembly plugin
 works.

 - Brett

 On 11/14/05, Nigel Magnay [EMAIL PROTECTED] wrote:
  The artifact being generated is effectively a merge of several other
  artifacts of the same type  - a WAR file. It's important to get the
  ordering right as the overwriting precidence matters.
 
  I was just thinking of needing an extra bit of user data, much like
  the properties you could put on dependencies in M1 that controlled
  things like whether the file got included in the manifest or not; a
  'proper' ordering of all dependencies does sound harder (and maybe too
  hard to be always right in all circumstances..)
 
  On 11/14/05, Brett Porter [EMAIL PROTECTED] wrote:
   Can you describe what the relevance of the ordering is? There might be
   something already available.
  
   The suggestion of this tag is tricky, as how does dependencies brought
   in transitively get ordered?
  
   - Brett
  
   On 11/14/05, Nigel Magnay [EMAIL PROTECTED] wrote:
Hi -
   
I'm doing some processing with a custom mojo that relies on the
dependency information to build an artifact, but the order of
processing is important. Because MavenProject.getArtifacts() returns a
set, this is unordered with respect to the pom.xml; I was wondering if
it's possible to add extra information in the pom, something like
   
...
dependency
  groupIdblah/groupId
  artifactIdthing/artifactId
  version3.8.1/version
order1/order  --
/dependency
dependency
  groupIdwoo/groupId
  artifactIdyay/artifactId
  version3/version
   order2/order  --
/dependency
...
   
Is there a good way of tackling this?
   
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
   
   
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
  
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [m2] dependency ordering

2005-11-14 Thread Nigel Magnay
The artifact being generated is effectively a merge of several other
artifacts of the same type  - a WAR file. It's important to get the
ordering right as the overwriting precidence matters.

I was just thinking of needing an extra bit of user data, much like
the properties you could put on dependencies in M1 that controlled
things like whether the file got included in the manifest or not; a
'proper' ordering of all dependencies does sound harder (and maybe too
hard to be always right in all circumstances..)

On 11/14/05, Brett Porter [EMAIL PROTECTED] wrote:
 Can you describe what the relevance of the ordering is? There might be
 something already available.

 The suggestion of this tag is tricky, as how does dependencies brought
 in transitively get ordered?

 - Brett

 On 11/14/05, Nigel Magnay [EMAIL PROTECTED] wrote:
  Hi -
 
  I'm doing some processing with a custom mojo that relies on the
  dependency information to build an artifact, but the order of
  processing is important. Because MavenProject.getArtifacts() returns a
  set, this is unordered with respect to the pom.xml; I was wondering if
  it's possible to add extra information in the pom, something like
 
  ...
  dependency
groupIdblah/groupId
artifactIdthing/artifactId
version3.8.1/version
  order1/order  --
  /dependency
  dependency
groupIdwoo/groupId
artifactIdyay/artifactId
version3/version
 order2/order  --
  /dependency
  ...
 
  Is there a good way of tackling this?
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]