簡體   English   中英

JavaScript可以使用jar文件中的類嗎(非Internet使用)

[英]Can JavaScript use classes from a jar file (Non Internet Use)

我在jar文件中有一個API,但是如何在JavaScript中使用jar中的類? 當我嘗試導入它們時,

    conf = Packages.abcapi.Config;
    var cfg = new conf.Config();

沒用 這將不會在瀏覽器或Internet中使用。

更新:

我正在使用Java ScriptEngine將我們的API擴展到所有JSR-223腳本語言。 在Java應用程序內部,我讀取了一個JavaScript文件,然后使用ScriptEngine執行該文件。 我需要JavaScript文件使用jar文件中的API中的類。 我嘗試在運行ScriptEngine時在類路徑中設置jar,但仍無法使用上述代碼找到類。 不過,這在Jython中可以正常工作,因為在Jython中,在類路徑中設置了jar之后,使用jar文件中的類沒有問題。

我正在讀取JavaScript文件,然后使用Java ScriptEngine執行它們。 在運行將要執行JavaScript的Java代碼時,將jar添加到類路徑中,

    java -cp ./;C:\Location\Of\The\Jar\File\abc.jar MainClass

然后,在JavaScript中,您可以從該jar中獲取程序包,並將其設置為變量。 然后,當您要使用該包中的Class時,只需在class名稱前加上變量,然后加上。 像這樣,

    myvariable = Packages.abc.foo.pack.name;

    var foo = new myvariable.ClassFromTheJarFile("arg1","arg2");

    foo.doSomething();

    var fooSister = new myvariable.AnotherCLassFromTheJarFile("arg1");

    fooSister.doSomthingFromThisClass();

我做錯的是嘗試像這樣直接從包中導入類,

    myvariable = Packages.abc.foo.pack.name.ClassFromTheJarFile;

因此,僅導入包,而不導入類。 為了明確起見,您不需要使用Java *

這在瀏覽器或Internet中未使用。 這是另一個使用URL位置的jar的鏈接,它可能對某人有所幫助http://mozilla-firefox-extension-dev.blogspot.com/2004/11/calling-java-code-in-custom-jars -from.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM