pr101.py
来自「mallet是自然语言处理、机器学习领域的一个开源项目。」· Python 代码 · 共 60 行
PY
60 行
# test of reload -- PR#101 and related PR#128## javac must be on your $PATHimport sysimport osfrom java.lang import Runtime, Systemrt = Runtime.getRuntime()# make sure this directory doesn't appear on your CLASSPATHtmpdir = '/tmp' # TBD: Un*xism# assertcpath = System.getProperty('java.class.path')for dir in cpath.split(os.pathsep): assert os.path.normpath(dir) <> tmpdirsys.path.insert(0, tmpdir)javafile = os.path.join(tmpdir, 'pr101j.java')def makejavaclass(s): fp = open(javafile, 'w') fp.write('''// Java side of the PR#101 test -- reload of a Java classpublic class pr101j { public static String doit() { return "%s"; }}''' % s) fp.close() proc = rt.exec('javac ' + javafile) status = proc.waitFor() if status <> 0: raise RuntimeError, 'javac process failed'try: makejavaclass("first") import pr101j ret = pr101j.doit() if ret <> 'first': print 'unexpected first doit() result:', ret makejavaclass("second") pr101j = reload(pr101j) ret = pr101j.doit() if ret <> 'second': print 'unexpected second doit() result:', ret makejavaclass("third") pr101j = reload(pr101j) ret = pr101j.doit() if ret <> 'third': print 'unexpected third doit() result:', retfinally: classfile = os.path.splitext(javafile)[0]+'.class' os.unlink(javafile) os.unlink(classfile)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?