From: Dave K. <dku...@re...> - 2008-05-05 18:40:33
|
DOUTCH GARETH-GDO003 <Gareth.Doutch <at> motorola.com> writes: > > > Hi > all, > > > When creating an > application using the standalone jar method, I have seen instructions stating to > place the startup script __run__.py at the root of the jar. > > However, whenever I am call > > java -jar jython.jar > > it is starting up to > the command interface in the normal way, not running my __run__.py script. What > am I missing? Yes, you can put your __run__.py in you jar file (at the root). But there are a couple of additional considerations. Here are a few points that might help: 1. When you start your jar, in order to kick off the __run__.py file, use the following at the command line: $ java org.python.util.jython -jar myjar.jar 2. The "if __name__== '__main__':" idiom does not seem to work. You will have to use something in __run__.py that starts your app unconditionally. 3. One easy way to build a jar to which you add your __run__.py and other application specific code is by using the Jython installer. There is an option to create a standalone jar file. When running the installer in GUI mode, that option is a couple of screens in. When running in silent mode you can use something like the following: $ java -jar jython_installer-2.2.1.jar -s -d Tmp -t standalone Run the following for help: $ java -jar jython_installer-2.2.1.jar --help 4. There is a bit more about deployment and building jars etc here: http://wiki.python.org/jython/LearningJython#deployment-and-distribution By the way, I wrote that "Deployment and Distribution" section of the Wiki, with the help of others. So, if you find any errors in it or things that need to be added, please let me know, or fix it yourself. Hope this helps. - Dave |