我试图从Rascal调用Java方法,但我收到此错误:
Cannot link method com.mypackage.Teste because: class not found
捣蛋鬼代码:
@javaClass{com.mypackage.Teste}
java void testeJava();
Java代码:
package com.mypackage;
public class Teste {
public void testeJava() {
System.out.println("it worked");
}
}
com.mypackage
包在我的src
文件夹中,以及所有Rascal代码。我也试过使用src.com.mypackage.Teste
,但结果相同。
我究竟做错了什么?
该类需要一个具有IValueFactory
类型的参数的构造函数。您通常会将其存储在字段中,因为这是响应函数调用的方式。 (与这家工厂建立IValues)
package com.mypackage;
import io.usethesource.vallang.IValueFactory;
public class Teste {
private final IValueFactory vf;
public Tests(IValueFactor vf) {
this.vf = vf;
}
public void testeJava() {
System.out.println("it worked");
}
}