2013-12-20 215 views
-1

试图放入Ace编辑器的应用程序代码:http://ace.c9.io/#nav=embedding。 我发现这样的事情:http://metoojava.wordpress.com/2010/06/20/execute-javascript-from-java/ ,我把这个代码:如何在Java程序/应用程序中添加javaScript代码?

engine.eval(new java.io.FileReader("ace-builds/src-noconflict/ace.js")); 

但我有生成错误。

Exception in thread "main" javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "window" is not defined. (<Unknown source>#1513) in <Unknown source> at line number 1513 
    at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:224) 
    at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249) 
    at javaapplication9.JavaApplication9.main(JavaApplication9.java:28) 
Caused by: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "window" is not defined. (<Unknown source>#1513) 
    at sun.org.mozilla.javascript.internal.ScriptRuntime.constructError(ScriptRuntime.java:3770) 
    at sun.org.mozilla.javascript.internal.ScriptRuntime.constructError(ScriptRuntime.java:3748) 
    at sun.org.mozilla.javascript.internal.ScriptRuntime.notFoundError(ScriptRuntime.java:3833) 
    at sun.org.mozilla.javascript.internal.ScriptRuntime.nameOrFunction(ScriptRuntime.java:1826) 
    at sun.org.mozilla.javascript.internal.ScriptRuntime.name(ScriptRuntime.java:1765) 
    at sun.org.mozilla.javascript.internal.Interpreter.interpretLoop(Interpreter.java:1785) 
    at sun.org.mozilla.javascript.internal.Interpreter.interpret(Interpreter.java:849) 
    at sun.org.mozilla.javascript.internal.InterpretedFunction.call(InterpretedFunction.java:162) 
    at sun.org.mozilla.javascript.internal.ContextFactory.doTopCall(ContextFactory.java:430) 
    at com.sun.script.javascript.RhinoScriptEngine$1.superDoTopCall(RhinoScriptEngine.java:116) 
    at com.sun.script.javascript.RhinoScriptEngine$1.doTopCall(RhinoScriptEngine.java:109) 
    at sun.org.mozilla.javascript.internal.ScriptRuntime.doTopCall(ScriptRuntime.java:3160) 
    at sun.org.mozilla.javascript.internal.InterpretedFunction.exec(InterpretedFunction.java:173) 
    at sun.org.mozilla.javascript.internal.Context.evaluateReader(Context.java:1169) 
    at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:214) 
    ... 2 more 

你们有没有人知道我该怎么做? Thans寻求帮助和节日快乐!

+0

什么编译错误你有吗? –

+0

因为它太多了,我会给它一个链接:http://pastebin.com/yss10VFd – Ursinus

+0

我编辑它并粘贴链接的堆栈跟踪 –

回答

1

请记住,您正在执行一个超出上下文的Javascript文件。

这个Javascript文件通常与浏览器JS引擎执行的,所以如果你是不是在这种情况下,你无法访问到像导航,窗口中的一些物品...等

+0

所以这不能做到?有没有办法? 或者是否有类似的Java程序,我可以使用? – Ursinus

+0

你想做什么?该指南旨在将ACE嵌入到Web应用程序中。 – vzamanillo

+0

是的,我知道它。我想以笔记本的形式制作一个程序,将其用作文本编辑器。 – Ursinus

相关问题