处理线程时的奇怪groovy行为
我有一个有趣的两难选择 如果我将我的类定义为:处理线程时的奇怪groovy行为,groovy,Groovy,我有一个有趣的两难选择 如果我将我的类定义为: class Browser { def swtException protected Object evaluate(script) throws SWTException { swtException=null display.syncExec() { try { result=swtBrowser.evaluate(script)
class Browser {
def swtException
protected Object evaluate(script) throws SWTException {
swtException=null
display.syncExec() {
try {
result=swtBrowser.evaluate(script)
} catch (SWTException swtException) {
Browser.swtException=swtException
}
}
}
我得到了一个相当有趣的错误:
线程“thread-5”org.eclipse.swt.SWTException中的异常:未能执行runnable(groovy.lang.MissingPropertyException:没有此类属性:类的SWTException
:com.mksoft.fbs.browser.browser
可能的解决方案:SWTEX(异常)
有什么想法吗
谢谢大家!!
Misha可能是因为您试图以静态方式访问类的属性?您似乎引用了
Browser.swtException
,但Browser
是一个类,而不是一个对象实例
您应该将swtException
声明为static
或使用this.browser
访问当前对象之一