标签: javax.script

Java 6:使用javax.script实现自己的脚本语言的示例?

我真的找不到使用 javax.script实现自己的脚本语言的好例子...

我需要一些东西才能开始.

  • 单证
  • 例子
  • 教程
  • 影片
  • 演示幻灯片(PDF)

注1:我真的不是在谈论的javascript;)
注2:我并不需要的例子,如何利用现有的实现,我想实现一个自己的语言.

谢谢.

java scripting-language javax.script jdk1.6

5
推荐指数
1
解决办法
2119
查看次数

ScriptEngine在java String中工作,但在String []中失败

以下代码用于计算String中的数据:rani = String rani ="32*0.25"; 并给出正确的输出为8.0

import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
import javax.script.ScriptException;

public class StringMathEngine {

    public static void main(String[] args) throws ScriptException {

        ScriptEngineManager mgr = new ScriptEngineManager();
        ScriptEngine engine = mgr.getEngineByName("JavaScript"); 
        String rani =  "32*0.25";
        System.out.println(engine.eval(rani));
    }
}
Run Code Online (Sandbox Code Playgroud)

但是在以下代码中使用时失败:

import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
import javax.script.ScriptException;

public class StringMathEngine {

    public static void main(String[] args) throws ScriptException {

        ScriptEngineManager mgr = new ScriptEngineManager();
        ScriptEngine engine = mgr.getEngineByName("JavaScript");



        String[]rani = {"s", "32*0.25", "r", "32*0.75+16", "r", "16", "s", "32"};

        for(int n=0;n<rani.length; …
Run Code Online (Sandbox Code Playgroud)

java javax.script

5
推荐指数
1
解决办法
1687
查看次数

如何在Android中使用ScriptEngineManager?

import android.widget.Toast;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;

 public void bEqual(View v) throws ScriptException {

       ScriptEngineManager mgr = new ScriptEngineManager();
       ScriptEngine engine = mgr.getEngineByName("JavaScript");
        String value = inputText.getText().toString();
        Toast.makeText(this,value,Toast.LENGTH_LONG).show();
        try{
            result = (double)engine.eval(value);
            Toast.makeText(this,String.format("%f",result),Toast.LENGTH_SHORT).show();
        }catch(Exception e){
            Toast.makeText(this,"Exception Raised",Toast.LENGTH_SHORT).show();
        }

    }
Run Code Online (Sandbox Code Playgroud)

这其中有什么问题吗?执行此操作时应用程序正在退出。它没有显示任何错误,但应用程序正在关闭

android javax.script

5
推荐指数
2
解决办法
2万
查看次数

确定当前的Javascript实现是否是Rhino

我在Java中使用javax.script,我希望能够检测当前的Javascript实现是否是Rhino.我这样做是因为我需要脚本才能在网页和Rhino上正常工作.

Javascript伪代码:

function writeMessage(message) {
    if (implementation is Rhino) {
        print(message);
    }
    else if (script is running in a web browser) {
        document.write(message);
    }
}
Run Code Online (Sandbox Code Playgroud)

javascript java rhino javax.script

2
推荐指数
1
解决办法
609
查看次数

如何使用 javax.script 创建和使用字节数组

我们可以使用 javax.script 创建原始数组,如字节数组或 int 数组吗?

java javax.script

2
推荐指数
1
解决办法
2742
查看次数