-1
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <facts>    
    <fact id="ItemPrice" displayName="Item Price">
    <defaultValue>0</defaultValue>
    <script><![CDATA[ 
            Double Value_Sales= 500;
            Double Unit_Sales= 10;
            Double res=Value_Sales/Unit_Sales;
            return res;
    ]]></script>
</fact>
</facts>

以上是用 xml 文件编写的用于查找商品价格的示例 groovy 脚本。

处理 Groovy 的 Java 代码:

List<Fact> factList = NREUtils.readXml("/SampleDictionary.xml") //cutome API
GroovyShell shell = new GroovyShell();
String scriptStr = factList.get(0).getScript();
Script groovyScript = shell.parse(scriptStr); // return "ItemPrice" script 
Binding binding = new Binding();
groovyScript.setBinding(binding);
Object val = groovyScript.run(); // **Result will be 50**

我想要相应的 Scala 代码。

4

1 回答 1

0

如果没有关于您的问题的更多信息,并且是在 JVM 上执行的两种语言(scala 和 groovy),我建议您只编译您的 groovy 代码并将 jar 包含在运行您的 scala 代码的 JVM 的类路径中。

在这里,您对如何将 groovy 代码转换为可用字节码有一些想法:http ://docs.groovy-lang.org/latest/html/documentation/tools-groovyc.html

然后像使用任何你想从 scala 调用的 java 库一样做:在 Scala 中使用 Java 库

于 2018-04-04T07:38:04.257 回答