Still getting this: BUILD FAILED/demo/deployments/demo.hotwaxmedia.com/build.xml:106: The following error occurred while executing this line: /demo/deployments/demo.hotwaxmedia.com/specialpurpose/build.xml:22: The following error occurred while executing this line: /demo/deployments/demo.hotwaxmedia.com/macros.xml:58: Could not create type scriptdef due to java.lang.NoClassDefFoundError: org/apache/bsf/ BSFException
---Adam, we either need to remove whatever is causing this and put something in place to ensure that we don't bank on using ./ant or ./ ant.bat - or help me come up with a better process. This has been working with the current process for a number of months and now it's busted (which just means the current stuff is not available to the community).
What shall we do? Cheers, Tim -- Tim Ruppert HotWax Media http://www.hotwaxmedia.com o:801.649.6594 f:801.649.6595 On Oct 29, 2008, at 11:23 AM, Adam Heath wrote:
Adam Heath wrote:Bilgin Ibryam wrote:I don't know if this is the final fix, but I still can't run antUse ./ant or ./ant.bat.If you want to use a globally installed ant, then you have to make that work yourself. If you can't figure out how, then respond here, and I'lltell you.If so inclined, I could come up with an ant shell script wrapper, thatone could install into $HOME/bin, that checks to see if $PWD is in an ofbiz tree, and call the local version, otherwise the global.Ok, sorry, I should have included more info into what was happening withthis.Classloaders in java are heirachal. If a child loader delegates to it'sparent first, before trying it's own system of loading. And, once a class is loaded from some loader, any other classes that it references in it's bytecode have to come from that same loader, or their parents.In this particular case, the loader that loads the main ant classes hasto be able to find the <scriptdef> task; this is due to it being an internal extension, not some <taskdef> addition. Which means the ant-nodep.jar needs to be on the same classloader as main ant. Then, once <scriptdef> is loaded, it tries to probe for JSR223 support(scripting, included by default in java 1.6), then bsf. Since this is a bytecode dependency, it again has to be in the same global classloader. I'm wondering if I could try to use <taskdef> to create <scriptdef>; this would allow for moving them out of global, *if* it works.
smime.p7s
Description: S/MIME cryptographic signature
