On 10/09/2008, at 8:25 PM, Mike Schrag wrote:
>>>> If I add ERExtensions to a project and push it above WebObjects,
>>>> it still tells me that NSArray is not generic. However, if I just
>>>> add ERExtensions as Projects (because I have them linked to my
>>>> workspace), and push the projects above WO Frameworks, the
>>>> ERExtensions generics NSArray, etc are picked up and errors go
>>>> away ......
>>> Hmm .. if you push ERExtensions framework up above WOOgnl, does it
>>> fix the problem? This is a tricky thing and related to the depth
>>> first vs breadth first stuff. If WOOgnl depends on WO, then WO
>>> will end up loading (transitively) in eclipse before ERX, and
>>> therefore will not be generic.
>>
>> Perhaps you could fix this by always appending transitive
>> dependencies (as a set) to the end of the list.
> Not sure if you mean at launch time or pre-launch-time.
Well the classpath needs to be the same for compile-time as for
runtime (or at least the runtime classpath is equal to or extends the
compile-time classpath) to ensure the correct ordering.
> If it's pre-launch, then we also have to maintain that list all the
> time (which is kind of tricky -- is it there because you added it or
> is it there because it was a transitive dep -- if it's transitive,
> then we need to only remove it if it's gone from all the frameworks
> that contain it recursively).
i.e., you end up with two TreeSets (declaredDependencies,
transitiveDependencies) and the resulting set is the union of the two.
> If it's launch time, this is sort of tricky because Eclipse
> constructs the flattened list of jars and folders for us, so we
> "lose" the original frameworks by this time. I'm considering
> rewriting eclipse's classpath "flattening" to suit our needs, but
> there are a lot of benefits to playing nicely and not redefining low
> level constructs liek this (for instance, launching things as java
> apps vs wo apps would have different runtime classpaths, which is
> pretty confusing)
(at the risk of going out on a limb) perhaps instead of rewriting
something, you could reuse something like these:
http://maven.apache.org/ant-tasks.html, woproject-maven2...
;-)
with regards,
--Lachlan Deck
This archive was generated by hypermail 2.0.0 : Wed Sep 10 2008 - 08:54:00 EDT