Re: Hudson and Client-Side Classes
Re: Hudson and Client-Side Classes
- Subject: Re: Hudson and Client-Side Classes
- From: Chuck Hill <email@hidden>
- Date: Mon, 15 Jun 2009 15:28:14 -0700
Ah Grasshopper,
When you can build cleanly with Ant, then you will be ready to leave
us.
On Jun 15, 2009, at 3:14 PM, David Avendasora wrote:
Progress. I have two new things:
First, I missed these to lines in the Ant debug:
fileset: Setup scanner in dir /Developer/Hudson/Workspaces/
BakeryManagementD2JavaClient/Trunk/Libraries with
patternSet{ includes: [*.jar] excludes: [] }
fileset: Setup scanner in dir /Developer/WebObjects/bestmaid/Library/
WebObjects/Extensions with patternSet{ includes: [*.jar] excludes:
[] }
So, it is scanning files in the project "Libraries" directory,
whether they are on the classpath or not!
Maybe. Which task is this for? What does your build.xml say for this
task?
Is that right? Even if there are files in the Libraries directory,
that doesn't automatically put them on the classpath, you still have
to add them, so I wouldn't think that Ant should be specifically
going out of it's way to find them there.
Reality is that which when you stop believing in it refuses to go away.
The same should hold true for /Library/WebObjects/Extensions/ if
people shouldn't be putting stuff in there, and it seems to cause a
lot of confusion, why go and automatically load everything in there?
For compatibility with how the runtime works. Just because people say
that you should not be putting things in there, does not mean that
other people will listen.
Second, I added an external .jar file to my project, it shows up in
the .classpath file in the project, but Ant is _not_ loading that
one. Why?
How did you add it? What does it look like in the .classpath file?
Chuck
On Jun 15, 2009, at 4:10 PM, David Avendasora wrote:
Hold on.
Where is Ant loading the classpath from? I assumed it was from
the .classpath file in the project, but I changed the classpath to
no load wojavaclient.jar anymore, but it still references it.
Dave
On Jun 15, 2009, at 3:10 PM, David Avendasora wrote:
It appears that Ant is loading the kind="lib" entry from the
project's .classpath file first even though it is the last entry
in the .classpath file.
I the ant classpath listing below, you'll see that the first .jar
on the classpath is wojavaclient.jar which has all the
com.webobjects.foundation classes in it and since it is loading
first, it's winning. Right? But in the .classpath file of the
project, the wojavaclient.jar is the _last_ entry. See below also.
It then appears to load the rest of the .classpath file
(type="con") in the order specified.
Dave
[wocompile] '-classpath'
[wocompile] '/Developer/Hudson/Workspaces/
BakeryManagementD2JavaClient/Trunk/bin:/Developer/Hudson/
Workspaces/BakeryManagementD2JavaClient/Trunk/Libraries/
wojavaclient.jar:/Developer/WebObjects/bestmaid/Library/Frameworks/
BMExtensions.framework/Resources/Java/bmextensions.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/ERExtensions.framework/
Resources/Java/ERExtensions.jar:/Developer/WebObjects/bestmaid/
Library/Frameworks/MicrosoftPlugIn.framework/Resources/Java/
microsoftplugin.jar:/Developer/WebObjects/bestmaid/Library/
Frameworks/ERJars.framework/Resources/Java/ERJars.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/ERJars.framework/Resources/
Java/erxservletadaptor.jar:/Developer/WebObjects/bestmaid/Library/
Frameworks/ERJars.framework/Resources/Java/erxwo54.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/ERJars.framework/Resources/
Java/icu4j-3_8_1.jar:/Developer/WebObjects/bestmaid/Library/
Frameworks/ERJars.framework/Resources/Java/junit.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/ERJars.framework/Resources/
Java/log4j-1.2.14.jar:/Developer/WebObjects/bestmaid/Library/
Frameworks/ERJars.framework/Resources/Java/slf4j-api-1.5.0.jar:/
Developer/WebObjects/bestmaid/Library/Frameworks/ERJars.framework/
Resources/Java/slf4j-log4j12-1.5.0.jar:/Developer/WebObjects/
bestmaid/Library/Frameworks/BakeryManagementFoundation.framework/
Resources/Java/bakerymanagementfoundation.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/ERJavaMail.framework/
Resources/Java/activation-1.1.1.jar:/Developer/WebObjects/bestmaid/
Library/Frameworks/ERJavaMail.framework/Resources/Java/
dsn-1.4.1.jar:/Developer/WebObjects/bestmaid/Library/Frameworks/
ERJavaMail.framework/Resources/Java/ERJavaMail.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/ERJavaMail.framework/
Resources/Java/imap-1.4.1.jar:/Developer/WebObjects/bestmaid/
Library/Frameworks/ERJavaMail.framework/Resources/Java/
mailapi-1.4.1.jar:/Developer/WebObjects/bestmaid/Library/
Frameworks/ERJavaMail.framework/Resources/Java/pop3-1.4.1.jar:/
Developer/WebObjects/bestmaid/Library/Frameworks/
ERJavaMail.framework/Resources/Java/smtp-1.4.1.jar:/Developer/
WebObjects/bestmaid/Library/Frameworks/JavaWOExtensions.framework/
Resources/Java/JavaWOExtensions.jar:/Developer/WebObjects/bestmaid/
System/Library/Frameworks/JavaDirectToWeb.framework/Resources/Java/
javadirecttoweb.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaDTWGeneration.framework/Resources/Java/
javadtwgeneration.jar:/Developer/WebObjects/bestmaid/System/
Library/Frameworks/JavaEOAccess.framework/Resources/Java/
javaeoaccess.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaEOApplication.framework/Resources/Java/
javaeoapplication.jar:/Developer/WebObjects/bestmaid/System/
Library/Frameworks/JavaEOControl.framework/Resources/Java/
javaeocontrol.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaEODistribution.framework/Resources/Java/
javaeodistribution.jar:/Developer/WebObjects/bestmaid/System/
Library/Frameworks/JavaEOGeneration.framework/Resources/Java/
javaeogeneration.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaEOInterface.framework/Resources/Java/
javaeointerface.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaEOInterfaceSwing.framework/Resources/Java/
javaeointerfaceswing.jar:/Developer/WebObjects/bestmaid/System/
Library/Frameworks/JavaEOProject.framework/Resources/Java/
javaeoproject.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaEORuleSystem.framework/Resources/Java/
javaeorulesystem.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaFoundation.framework/Resources/Java/
javafoundation.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaJDBCAdaptor.framework/Resources/Java/
javajdbcadaptor.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaWebObjects.framework/Resources/Java/
javawebobjects.jar:/Developer/WebObjects/bestmaid/System/Library/
Frameworks/JavaWOJSPServlet.framework/Resources/Java/
javawojspservlet.jar:/usr/share/ant/lib/ant-launcher.jar:/
Developer/Hudson/Dependencies/woproject.jar:/usr/share/ant/lib/ant-
jai.jar:/usr/share/ant/lib/ant-jmf.jar:/usr/share/ant/lib/ant-
junit.jar:/usr/share/ant/lib/ant-nodeps.jar:/usr/share/ant/lib/ant-
swing.jar:/usr/share/ant/lib/ant-testutil.jar:/usr/share/ant/lib/
ant-trax.jar:/usr/share/ant/lib/ant.jar:/usr/share/ant/lib/
xercesImpl.jar:/usr/share/ant/lib/xml-apis.jar'
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="Sources"/>
<classpathentry kind="con" path="WOFramework/BMExtensions"/>
<classpathentry kind="con" path="WOFramework/ERExtensions"/>
<classpathentry kind="con" path="WOFramework/MicrosoftPlugIn"/>
<classpathentry kind="con" path="WOFramework/ERJars"/>
<classpathentry kind="con" path="WOFramework/
BakeryManagementFoundation"/>
<classpathentry kind="con" path="WOFramework/ERJavaMail"/>
<classpathentry kind="con" path="WOFramework/JavaWOExtensions"/>
<classpathentry kind="con" path="WOFramework/JavaDirectToWeb"/>
<classpathentry kind="con" path="WOFramework/JavaDTWGeneration"/>
<classpathentry kind="con" path="WOFramework/JavaEOAccess"/>
<classpathentry kind="con" path="WOFramework/JavaEOApplication"/>
<classpathentry kind="con" path="WOFramework/JavaEOControl"/>
<classpathentry kind="con" path="WOFramework/JavaEODistribution"/>
<classpathentry kind="con" path="WOFramework/JavaEOGeneration"/>
<classpathentry kind="con" path="WOFramework/JavaEOInterface"/>
<classpathentry kind="con" path="WOFramework/
JavaEOInterfaceSwing"/>
<classpathentry kind="con" path="WOFramework/JavaEOProject"/>
<classpathentry kind="con" path="WOFramework/JavaEORuleSystem"/>
<classpathentry kind="con" path="WOFramework/JavaFoundation"/>
<classpathentry kind="con" path="WOFramework/JavaJDBCAdaptor"/>
<classpathentry kind="con" path="WOFramework/JavaWebObjects"/>
<classpathentry kind="con" path="WOFramework/JavaWOJSPServlet"/>
<classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="Libraries/wojavaclient.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
On Jun 15, 2009, at 2:06 PM, Mike Schrag wrote:
this is all determined by classpath/framework ordering, so it
obviously looks like the order is wrong somehow ... hudson isn't
doing anything special here, so i would run ant with debug
manually and see what's going on. it should fail identically
from commandline.
On Jun 15, 2009, at 1:34 PM, David Avendasora wrote:
Hi All (mostly Mike, again)
I've gotten all my frameworks and applications to successfully
build with Hudson, including fully embedded servlet deployments,
except for one.
Of course it is a Java Client project that makes use of some
client-side classes from one of my frameworks that is failing.
Here's the situation:
I'm using Generics with WO 5.3.3. Normally you'd use Wonder to
get Generic versions of com.webobjects.foundation.NSArray and
friends, only ERExtensions doesn't create a client-side jar for
use with WebStart Java Client apps (WebServerResources/Java/
ERExtensions.jar), so I had to create my own framework that
does. I've included my BMExtensions.framework on the classpath
of my Project and ensured that it loads prior to even
ERExtensions.framework. No big deal, and running the Ant build
from within Eclipse handles things just fine (I'm guessing it is
really looking at the server-side class), but when Hudson tries
to build the project, I get:
compile:
[mkdir] Created dir: /Developer/Hudson/Workspaces/
BakeryManagementD2JavaClient/Trunk/bin
[wocompile] Compiling 262 source files to /Developer/Hudson/
Workspaces/BakeryManagementD2JavaClient/Trunk/bin
[wocompile] /Developer/Hudson/Workspaces/
BakeryManagementD2JavaClient/Trunk/Sources/com/bestmaid/
bakeryManagement/client/integration/_ExternalCustomer.java:62:
type com.webobjects.foundation.NSArray does not take parameters
[wocompile] public
NSArray
<com.bestmaid.bakeryManagement.client.orderManagement.Customer>
bmCustomers() {
[wocompile] ^
So it is obviously using JavaFoundation.framework's version of
NSArray instead of my custom one, or even the ERExtensions
server-side one. How do I override which one it is using to do
the compile so it won't fail?
Thanks,
Dave
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
--
Chuck Hill Senior Consultant / VP Development
Come to WOWODC'09 in San Fran this June!
http://www.wocommunity.org/wowodc09/
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden