<div dir="ltr"><div class="gmail_signature"><div dir="ltr">Hi all,</div><div>As a Scilab user, i am facing difficulties during the Scilab 6 adaptation of my project. I did my best to isolate the pb. This code works with Scilab 5.5. At some point of my code, I have:</div><div><br></div><div>>pair = jinvoke(deployer,'deployOrLookup');<br>>evstr('1+1');// crash!<br>>// or<br>>// deff('[x]=myplus(y,z)','x=y+z') // crash!</div><div><br></div><div>Important points:<br></div><div><div>- The common point of evstr and deff is it calls the scilab compiler.<br></div></div><div>- deployOrLookup() calls a java method using jinvoke(), which creates a java Process (Process process = pb.start(); ) that executes another java class</div><div>(cmd like java -Djava.security.policy=xxx -Dlog4j.configuration=xx -Drmi.port=xxx myClass). </div><div>- If the jvm already exists, deployOrLookup() does not create it again, but just registers it..</div><div><br></div><div>Results:</div><div>-Executing this code the first time, deployOrLookup() correctly runs a new jvm executing myClass.. and ... at the first evstr() or deff() call, Scilab 6.0 close with "Scilab 6.0.0 (GUI) a cessé de fonctionner .. un problème a fait que le programme a cessé de fonctionner correctement. Windows va fermer ce programme et vous indiquer si une solution est disponible."</div><div>- Executing this code a 2nd time, deployOrLookup() directly registers the running JVM and executes fine any evstr() or deff() call.</div><div>- If I disable the java Process execution (by putting in comment //Process process = pb.start(); ),</div><div>evstr() or deff() can be executed without crashing Scilab.</div><div><br></div><div>Many thanks to the Scilab community</div><div>Michael</div><div><br></div><div><br></div></div>
</div>