2008/6/26 Andy Stevens <[EMAIL PROTECTED]>: > Another possiblity I was wondering about, given jslint is itself > written in javascript, was using the <script> optional task to run it > rather than calling Rhino. Ideally, I'd use the src attribute to read > in an unmodified jslint.js then some inline javascript to set up > various options and call it. Can that be done in a single <script> > task, though? i.e. would it read/execute the external src file and > then execute the inline script as well? Or, if I use more than one > <script> task in a target (one using src, one with the inline script) > would the objects/functions defined in the first one still be > available in the subsequent task or does each one run in a completely > separate/clean context?
To answer my own questions, in case anyone else is interested... <script language="javascript"><![CDATA[ function helloWorld() { var echo = project.createTask("echo"); echo.setMessage("Hello World"); echo.perform(); } ]]></script> <script language="javascript"><![CDATA[ helloWorld(); ]]></script> produces the error javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "helloWorld" is not defined. (<Unknown source>#2) in <Unknown source> at line number 2 so I conclude that each script task does indeed start with a blank slate. Moving the function definition into a separate file and trying <script language="javascript" src="lib/test/test.js"><![CDATA[ helloWorld(); ]]></script> gave the error build.xml:136: file lib\test\test.js not found. which is interesting since passing "lib/test/jslint.js" as the first (<arg value=...) argument to Rhino (in my previous <java> task) worked okay. However, <script language="javascript" src="${basedir}/lib/test/test.js"><![CDATA[ helloWorld(); ]]></script> successfully wrote "Hello World" to the console. So, my next step is to pull in JSLint's fulljslint.js using the src attribute, and write a nested "Ant companion" script that allows the various available options to be set before calling it. One more question - I see in the Ant manual how to dynamically create a fileset within the script, and also that the task supports a nested <classpath> element. Is it possible, though, to have a nested fileset and access that via the self object? Andy. -- http://pseudoq.sourceforge.net/ Open source java Sudoku application --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]