HelloWorld 善战者,求之于势,不责于人;故能择人而任势。

知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得。物有本末,事有终始。知所先后,则近道矣。

  BlogJava :: 首页 ::  :: 联系 ::  :: 管理 ::
  167 随笔 :: 1 文章 :: 40 评论 :: 0 Trackbacks

 

import java.io.File;
import java.io.FileReader;

import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;


public class 执行JS文件 {
 
 public static void main(String[] args) {
  try {
   执行JS文件 engine = new 执行JS文件();
   engine.exeFunAdd(100, 200);
  } catch(Exception e) {
   e.printStackTrace();
  }
 }
 
 public String getPath() {
  File f = new File("");
  return f.getAbsolutePath() + "/js/";
 }
 
 public void exeFunAdd(int a ,int b) {
  ScriptEngineManager sem = new ScriptEngineManager();
  ScriptEngine jsEngine = sem.getEngineByName("javascript");
  try {
   jsEngine.eval(new FileReader(getPath()+"funs.js"));
  } catch (Exception e) {
   e.printStackTrace();
  }
  Invocable invocableEngine = (Invocable)jsEngine;
  try {
   Object ret = invocableEngine.invokeFunction("add", a,b);
   System.out.println(ret);
  } catch (Exception e) {
   
  }
 }
}


在目录下有个js目录下面有个funs.js
function add(a, b) {
    return a+b;
}

</script>

posted on 2007-11-15 17:39 helloworld2008 阅读(1281) 评论(1)  编辑  收藏 所属分类: java - 脚本

评论

# re: java脚本 执行简单的js文件中的函数 2008-08-26 09:54 cyc
请问你有javax.script这个包吗,给我发一份 cyc@gdcn.com  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: