我正在尝试使用scala语言编写MWE2工作流组件。
下面是scala代码:
package com.ford.modelling.workflow
import org.eclipse.emf.mwe2.runtime.workflow.{IWorkflowComponent, IWorkflowContext}
class SayHello extends IWorkflowComponent {
var message : String = null;
def preInvoke {}
def invoke(ctx : IWorkflowContext) { System.out.println(message) }
def postInvoke {}
}
和下面是工作流代码:
module com.ford.modelling.workflow.SomeWorklow
SayHello {}
我不明白为什么这个工作流会报错:
'com.ford.modelling.workflow.SayHello' does not have a public default constructor.
我认为scala IDE插件并没有完全模仿java协议,例如IType没有公开一个无参数的构造函数。你可能想问一下天平的人。
一旦显式添加默认构造函数,错误信息就会消失。明白了吗?
在google上搜索了一下,发现可能没有默认构造函数的语法,所以我认为这是scala工具的问题。问题也会在运行时发生吗?