| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | |
| <html> | |
| <head> | |
| <title>Developing Scripts on the Command Line</title> | |
| <meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8"> | |
| </head> | |
| <body> | |
| <a name="top"></a> | |
| <h1>Developing Scripts on the Command Line</h1> | |
| For users who do not wish to develop their OpenOffice.org scripts using an IDE | |
| there is a simple command line interface built into the OpenOffice.org Scripting | |
| module which can be used for the generation and deployment of OpenOffice.org | |
| Scripts. | |
| <h2>Contents</h2> | |
| <ul> | |
| <li> | |
| <p><a href="#prereqs">Prerequisites</a> </p> | |
| </li> | |
| <li> | |
| <p><a href="#usage">The CommandLineTools class</a> </p> | |
| </li> | |
| <li> | |
| <p><a href="#examples">Examples</a> </p> | |
| </li> | |
| </ul> | |
| <h2><a name="prereqs">Prerequisites</a></h2> | |
| <ul> | |
| <li>The Scripting module office.jar file should be included in the | |
| classpath. You can download this file from <a href="./office.jar">here</a> | |
| </li> | |
| <li>The main Scripting Framework jar file ScriptFramework.jar also needs | |
| to be included in the classpath. You can find it in the program/classes | |
| directory of your OpenOffice.org installation. | |
| </li> | |
| <li>The CommandLineTools class will only work if an XML parser (such | |
| as <a href="http://xml.apache.org/xerces2-j/index.html">Apache Xerces</a>) | |
| is available in the classpath.</li> | |
| </ul> | |
| <a name="usage"> </a> | |
| <h2><a name="usage">The CommandLineTools class</a></h2> | |
| <a name="usage">The CommandLineTools class takes the following options (<b>Note:</b> | |
| Options in angle brackets "<>" are required, options in square | |
| brackets "[]" are optional): </a> | |
| <blockquote> <a name="usage"><b>[-o Path to OpenOffice.org Installation] -g [Path to Parcel directory] [options]</b> </a> | |
| <p> <a name="usage">Generates a Script Parcel for the given the | |
| parcel directory. The optional -o flag is used to specify that path | |
| to your OpenOffice.org installation. If it is not provided the CommandLineTools | |
| class will attempt to discover your OpenOffice.org installation and will print | |
| an error if it fails. The parcel name will be the name of the parcel | |
| directory plus the .sxp extension. </a></p> | |
| <ul> | |
| <li><a name="usage">If a parcel directory is not specified the | |
| current directory is used. If the parcel directory does not contain a | |
| directory named Contents an error message is printed. Otherwise a Script | |
| Parcel (.sxp) file is generated in the parcel directory containing all | |
| of the files under the Contents directory. The options that may be used | |
| with the -g option allow the user to specify how the | |
| parcel-descriptor.xml file for the Script Parcel is generated (see the | |
| Scripting Framework </a><a href="developer-guide.html">developer guide</a> | |
| for more information on the parcel-descriptor.xml file). The following | |
| options are available: | |
| <p> <b>[-l language[=supported extension list]]</b> </p> | |
| <p> Specifies which language attribute to use for the parcel | |
| element in the parcel-descriptor.xml file. The supported extension list | |
| is ignored if the language is Java. Otherwise all files that have one of | |
| the supported extensions (the list should be separated by the platform | |
| specific path separator, ":" on Unix, ";" on Windows) will be added as | |
| script entries to the parcel-descriptor.xml file. </p> | |
| <p> Alternatively the user can specify a list of names at the | |
| command line which will be added as scripts and no search for script | |
| names will be performed. The following table shows the behaviour of | |
| CommandLineTools when the -l flag is used: </p> | |
| <p> | |
| <table border="1"> | |
| <tbody> | |
| <tr> | |
| <th>-l flag used? </th> | |
| <th>parcel-descriptor.xml exists? </th> | |
| <th>result </th> | |
| </tr> | |
| <tr> | |
| <td align="center">no </td> | |
| <td align="center">no </td> | |
| <td>error message printed </td> | |
| </tr> | |
| <tr> | |
| <td align="center">yes </td> | |
| <td align="center">no </td> | |
| <td>parcel-descriptor.xml generated<br> | |
| parcel.sxp generated </td> | |
| </tr> | |
| <tr> | |
| <td align="center">no </td> | |
| <td align="center">yes </td> | |
| <td>parcel-descriptor.xml not generated<br> | |
| parcel.sxp generated </td> | |
| </tr> | |
| <tr> | |
| <td align="center">yes </td> | |
| <td align="center">yes </td> | |
| <td>if <br> | |
| language is different from parcel-descriptor.xml language, error <br> | |
| else <br> | |
| parcel-descriptor.xml regenerated <br> | |
| parcel.sxp generated </td> | |
| </tr> | |
| </tbody> | |
| </table> | |
| </p> | |
| <p> <b>[-p name=value]</b> </p> | |
| <p> Specifies a name value pair to be added as a language | |
| dependent property in the parcel-descriptor.xml file </p> | |
| <p> <b>[-v]</b> </p> | |
| <p> Specifies that verbose output should be displayed. </p> | |
| </li> | |
| </ul> | |
| <p> <b>[-o Path to OpenOffice.org Installation] -d <Path to Script Parcel> <Target | |
| Directory|Document></b> </p> | |
| <p> Deploys the given Script Parcel to a directory or an | |
| OpenOffice.org document. The optional -o flag is used to specify that path | |
| to your OpenOffice.org installation. If it is not provided the CommandLineTools | |
| class will attempt to discover your OpenOffice.org installation and will print | |
| an error if it fails. A directory will be created with the name of | |
| the Parcel and the contents of the Parcel will be put into that | |
| directory. </p> | |
| <ul> | |
| <li>If deploying to an OpenOffice.org installation the target | |
| directory should be the <OpenOffice.org Installation>/user/Scripts or | |
| <OpenOffice.org Installation>/share/Scripts directory. If the either the | |
| Script Parcel or the target do not exist an error message is printed. | |
| Otherwise the Script Parcel is deployed to the target. </li> | |
| </ul> | |
| </blockquote> | |
| <p><a href="#top">Top</a> <a name="examples"> </a></p> | |
| <h2><a name="examples">Examples</a></h2> | |
| <ul> | |
| <li> | |
| <p><a name="examples"><font face="Courier, monospace" size="2"> java | |
| CommandLineTools -g myparceldir -l Java </font> </a></p> | |
| <p><a name="examples">Generates a myparceldir.sxp file in | |
| myparceldir automatically exporting all public Java methods which take | |
| XScriptContext as their first parameter as OpenOffice.org scripts. </a></p> | |
| </li> | |
| <li><a name="examples"><font face="Courier, monospace" size="2"> java | |
| CommandLineTools -g -l BeanShell=.bsh </font> </a> | |
| <p><a name="examples">Generates a script parcel file in the current | |
| directory automatically exporting all files that end with the .bsh | |
| extension as BeanShell scripts </a></p> | |
| </li> | |
| <li><a name="examples"><font face="Courier, monospace" size="2"> java | |
| CommandLineTools -g myparceldir -l BeanShell MyScript.bsh </font> </a> | |
| <p><a name="examples">Generates a myparceldir.sxp file in | |
| myparceldir and exports MyScript.bsh as an OpenOffice.org script. </a></p> | |
| </li> | |
| <li><a name="examples"><font face="Courier, monospace" size="2"> java | |
| CommandLineTools -g myparceldir -l Java -p classpath=dep1.jar:dep2.jar </font> </a> | |
| <p><a name="examples">Generates a myparceldir.sxp file in | |
| myparceldir, automatically searching for valid OpenOffice.org scripts, and | |
| adding the classpath property to each OpenOffice.org script. </a></p> | |
| </li> | |
| <li><a name="examples"><font face="Courier, monospace" size="2"> java | |
| CommandLineTools -g myparceldir -l Java -p classpath=dep1.jar:dep2.jar | |
| -p secondprop=secondvalue </font> </a> | |
| <p><a name="examples">Generates a myparceldir.sxp file in | |
| myparceldir, automatically searching for valid OpenOffice.org scripts, and | |
| adding the classpath and the secondprop properties to each OpenOffice.org | |
| script. </a></p> | |
| </li> | |
| <li><a name="examples"><font face="Courier, monospace" size="2"> java | |
| CommandLineTools -d myparceldir.sxp /export/home/MyOffice/user/Scripts </font> </a> | |
| <p><a name="examples">Deploys the myparceldir.sxp Script Parcel to | |
| the specified office directory.</a></p> | |
| </li> | |
| <li><a name="examples"> <font face="Courier, monospace" size="2">java | |
| CommandLineTools -g myparceldir -l JavaScript MyScript.js</font></a><br> | |
| <a name="examples">Generates a myparceldir.sxp file in myparceldir | |
| and exports MyScript.js as an OpenOffice.org script.</a></li> | |
| </ul> | |
| <p><a href="#top">Top</a> </p> | |
| <hr> Last Modified: Nov 19 2003 | |
| </body> | |
| </html> |