【问题标题】:Running Java from Nashron JavaScript - Exception java.lang.ClassNotFoundException从 Nashron JavaScript 运行 Java - 异常 java.lang.ClassNotFoundException
【发布时间】:2015-02-05 23:34:33
【问题描述】:

我已经 runMyJava.jjs(使用 Nashorn 在 JavaScript 中运行 Java)

var javaClass = Java.type('mypackage.MyJavaClass'); 
javaClass.hello();

运行

package mypackage;

public class MyJavaClass {

    public static void main(String[] args) {
        System.out.println("hello from MyJavaClass.main ");

    }

}

但我明白了

Exception in thread "main" java.lang.RuntimeException: java.lang.ClassNotFoundException: mypackage.MyJavaClass
    at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:382)
    at jdk.nashorn.tools.Shell.apply(Shell.java:381)
    at jdk.nashorn.tools.Shell.runScripts(Shell.java:310)
    at jdk.nashorn.tools.Shell.run(Shell.java:166)
    at jdk.nashorn.tools.Shell.main(Shell.java:130)
    at jdk.nashorn.tools.Shell.main(Shell.java:109)
Caused by: java.lang.ClassNotFoundException: mypackage.MyJavaClass
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)

从 Eclipse/Enide Studio 或在终端 jjs runJava.jjs 中运行时

所有项目都在https://github.com/paulvi/JavaRoot

【问题讨论】:

    标签: java javascript nashorn nodeclipse


    【解决方案1】:

    我应该通过类路径运行

    jjs -cp ./ runJava.jjs
    

    http://docs.oracle.com/javase/8/docs/technotes/tools/unix/jjs.html

    Java 应该已经编译好了

    javac *.java
    

    how to access methods from my class inside javascript in Nashorn

    【讨论】:

      猜你喜欢
      • 2013-08-07
      • 2013-09-10
      • 2013-11-02
      • 1970-01-01
      • 1970-01-01
      • 2023-01-31
      • 1970-01-01
      • 1970-01-01
      • 2016-05-05
      相关资源
      最近更新 更多