Groovy脚本返回null

时间:2017-11-08 09:04:13

标签: java groovyscriptengine

Java文件:

      public class TestModule{

          @WrapToScript
          public Integer test() final Object params) {
              return 10;
          }
      }

我将使用扩展点将上述类包含到ease模块中,如下所示:

      <extension
         point="org.eclipse.ease.modules">

      <module
            category="pkg.script.platform"
            class="pkg.script.modules.TestModule"
            id="pkg.script.modules.TestModule"
            name="TestModule"
            visible="true">
      </module>
   </extension>

Groovy脚本:

      print(test();)

我正在调用从groovy加载的java模块,如果我在test()方法中编写一些功能它工作正常,但它总是返回Null,即使我显式返回一些整数。 此脚本的预期输出为10,但它打印为null。

1 个答案:

答案 0 :(得分:0)

这是因为我在初始化引擎时创建的模块中添加了前后执行代码。

在后执行代码中,我们有一个名为result的变量,而groovy引擎也以相同的名称存储其结果。

因此结果变量在后执行代码中被重写。

在后执行代码中重命名变量名称后,问题就解决了。