JEP and JPype in a single process

skn skn at skn.com
Tue Jun 28 03:05:33 EDT 2005


Thanks for your prompt reply, Steve.
Just one suggestion, may be the startJVM method's implementation can itself
be changed to check for already existing JVM.
Of course this will also mean a change in shutdownJVM() semantics. If JVM
has been started earlier(not using startJVM()), shutdownJVM() should be a
do-nothing function.

Another question I had was, is there any option to suppress the JVM activity
report that gets displayed. For e.g.,

JVM activity report     :
        classes loaded       : 26
JVM has been shutdown

I know I can do it by re-directing the std err to NUL.
But is there any other option?

With best regards,
skn

"Steve Menard" <foo at bar.com> wrote in message
news:MXFte.45766$Fn.345638 at weber.videotron.net...
> skn wrote:
> > Hello,
> >
> > I have written a very simple java class file, which invokes a Python
script
> > using JEP.
> >
> > Code snippet:-
> > -------------------
> > Jep jep = new Jep(false);
> > jep.runScript("C:\\temp\\testscript.py");
> > jep.close();
> >
> > Now inside this Python script I want to make Java calls using JPype.
> > If I use startjvm() inside this Python script, a Runtime Error
(exception)
> > is thrown.
> > Also tried attachThreadToJVM(), but doesn't work, again Runtime Error.
> >
> > Any clues as to how I could achieve my goal??
> > The interaction shown below should happen in a single process.
> >
> > JAVA ==> jep ==> PYTHON ==> jpype ==> JAVA
> >
> > Regards,
> > skn
> >
> >
>
> You're trying to do something I hope to make possible somewhere down the
> road ...
>
> As of today, I do not think it is possible. JPype does not provide a way
> to initialize the JVM-bridge system except for startJvm .. which seems
> to be prohibited when a JVM is already running.
>
> AttachThreadToJVM will only work once the JVM-bridge system has been
> initialize.
>
> I will look into providing a sister method to startJVM to attach to the
> currently running JVM instead of starting a new one. IF it does not
> require major changes I will release it as 0.5.1. If you'd like you can
> submit an enhancement request on the JPype sourceforge page, so this
> doesn't get lost.
>
>
>
> -- 
> Steve Menard
> --------------------
> Maintainer of http://jpype.sourceforge.net





More information about the Python-list mailing list