在Jython中,如何引发Python异常,而不是java.lang.Exception?

时间:2016-06-25 23:31:06

标签: jython wlst

Python和Jython新手在这里。

我对如何在普通Python中引发异常非常熟悉。

然而,在Jython环境中,我发现自己(WLST),如果我这样做:

raise Exception("hello")

...然后它似乎引发java.lang.Exception

wls:/offline> raise Exception("hello")
Traceback (innermost last):
  File "<console>", line 1, in ?
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

java.lang.Exception: java.lang.Exception: hello
wls:/offline> 

如何在此环境中引发Python Exception?或者,至少:为什么在这里提出java.lang.Exception

2 个答案:

答案 0 :(得分:1)

对于后代,我可以这样做:

from exceptions import Exception as PythonException

然后我可以这样做:

raise Exception('This will be a java.lang.Exception.')
raise PythonException('This will be a "native" Python exception.')

答案 1 :(得分:0)

请找到WLST Exception

的以下链接

谢谢,pavan