I’m confused. J So, what’s the difference between the
Java libraries and the Python modules? My understanding was that Jython makes
use of the Python modules, shipped in the Lib directory. And, my problem was
that the Lib directory wasn’t in the jar hence the jar wasn’t portable (i.e. I
couldn’t put it in a web app and use it).
You seem to be suggesting that I can use the jar without the Lib
directory bundled within it, and some other set of external modules?
From: Jason R Briggs
Sent: 02 November 2009 09:49
To: Baker, John (IT/UK); firstname.lastname@example.org
Subject: Re: [Jython-users] from and with keywords
Yes you can (but that means you
can only use java libraries, rather than python modules). However your
question was where to put resources -- and that's how I do it... ;-)
If you need to use the __future__ mod, you'll need to bundle the Lib dir.
On Mon, Nov 2, 2009 at 9:24 AM, <email@example.com> wrote:
Surely we can deploy the standalone jar
and nothing else?
you're deploying in a war, then stick the Lib directory in the
"classes" dir (for example), and then point the python path at that
directory with something vaguely like:
Properties props = new Properties();
String jythonPath = libDir.getFile().getCanonicalPath();
PythonInterpreter.initialize(System.getProperties(), props, null);
In my case, "libDir" is a prop injected by spring:
<property name="libDir" value="classpath:Lib" />
So you'll need to grab the canonical path according to whatever framework
you're working within.
Dunno if that helps?
I unzipped the jython package and I can run
the jython jar using java –jar jython.jar. The interpreter works fine.
What the instructions lack is how to
copy the jython jar and resources elsewhere. I don’t want to ship the
entire jython zip file with my project; I want to place the relevant parts into
a war file.
The #!/usr/bin/python is irrelevant –
it’s there because the script has it, but it still doesn’t work without it.
The answer seems to lie in the lib
directory – could you tell me how Jython loads resources from it?
This e-mail (including any attachments) is confidential, may contain
proprietary or privileged information and is intended for the named
recipient(s) only. Unintended recipients are prohibited from taking action
on the basis of information in this e-mail and must delete all copies.
Nomura will not accept responsibility or liability for the accuracy or
completeness of, or the presence of any virus or disabling code in, this
e-mail. If verification is sought please request a hard copy. Any reference
to the terms of executed transactions should be treated as preliminary only
and subject to formal written confirmation by Nomura. Nomura reserves the
right to monitor e-mail communications through its networks (in accordance
with applicable laws). No confidentiality or privilege is waived or lost by
Nomura by any mistransmission of this e-mail. Any reference to "Nomura" is
a reference to any entity in the Nomura Holdings, Inc. group. Please read
our Electronic Communications Legal Notice which forms part of this e-mail: