Exemplo n.º 1
0
 def __shutdownJVM(self):
   """
   Shuts down the Java Virtual Machine
   """
   
   if self._globJVMOn:
     jpype.shutdownJVM()
     
     self._globJVMOn = False
     self._globJVMSymm = None
     Messages.log(__name__, "JVM shut down!", verbose=1)
     
     self._deleteJVMOutputFiles()
Exemplo n.º 2
0
  def __startJVM(self):
    """
    Initializes Java Virtual Machine and loads symmetrizer
    """
    
    jarpath = os.path.join(Constants._sourceDir, Constants._symmetrizerPath)
    
    try:
      jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % (jarpath))
      
      self._globJVMOn = True
      self._globJVMSymm = JPackage('net.webmo.symmetry').Main
      Messages.log(__name__, "JVM initialised!", verbose=1)
            
      #TODO: In future this should be done via streams
      fs = jpype.JClass("java.io.File")
      ps = jpype.JClass("java.io.PrintStream")
      jpype.java.lang.System.setOut(ps(fs(self._globJVMOutPath)))
      jpype.java.lang.System.setErr(ps(fs(self._globJVMErrPath)))

    except:
      self._globJVMOn = False
      self._globJVMSymm = None
      Messages.warning(__name__, "Cannot start JVM!", verbose=0)