-->

在哪里可以找到可用的JSR-223脚本语言的列表? [关闭](Where can I find

2019-06-17 16:08发布

我需要为我的应用程序基于JVM的脚本语言,并想看到的是还有什么在那里,除了Groovy中,红宝石和Python。

谷歌一直指着我死页, http://scripting.dev.java.net/

Answer 1:

这不是一个正式名单,但你可以从这里开始: http://en.wikipedia.org/wiki/List_of_JVM_languages

犀牛(JavaScript)的在Oracle JDK / JRE默认情况下实现的。

有了这个代码,你可以看到什么脚本语言在你的JDK可供选择:

import java.util.*;
import javax.script.*;

public class A {

    public static void main( String[] args ) {

        ScriptEngineManager mgr = new ScriptEngineManager();
        List<ScriptEngineFactory> factories = mgr.getEngineFactories();

        for (ScriptEngineFactory factory : factories) {

            System.out.println("ScriptEngineFactory Info");

            String engName = factory.getEngineName();
            String engVersion = factory.getEngineVersion();
            String langName = factory.getLanguageName();
            String langVersion = factory.getLanguageVersion();

            System.out.printf("\tScript Engine: %s (%s)%n", engName, engVersion);

            List<String> engNames = factory.getNames();
            for(String name : engNames) {
                System.out.printf("\tEngine Alias: %s%n", name);
            }

            System.out.printf("\tLanguage: %s (%s)%n", langName, langVersion);

        }

    }

}

在这里获得这个例子: http://www.oracle.com/technetwork/articles/javase/scripting-140262.html

你可能想尝试的Lua了。 看看这里: 如何能够将LUA在java中?



Answer 2:

旧的页面位于此处(下载,查看,错误的内容类型的响应集) http://java.net/projects/scripting/sources/svn/content/trunk/www/index.html?raw=true

举办了JSR-223项目页面上的那些可在浏览http://java.net/projects/scripting/sources/svn/show/trunk/engines但名单是:

JSR 223个脚本引擎

  • AWK
  • BeanShell的
  • EJS
  • FreeMarker的
  • Groovy的
  • Jaskell
  • Java的
  • JavaScript的
  • JavaScript的(网页浏览器)
  • 果冻
  • JEP
  • JEXL
  • JST
  • JudoScript
  • JUEL
  • OGNL
  • PNUTS
  • 蟒蛇
  • 红宝石
  • 方案
  • 睡觉
  • TCL
  • 速度
  • XPath的
  • XSLT

JSR 223脚本引擎在其他地方保持

  • JavaFX脚本
  • ABCL
  • AppleScript的
  • 贝克斯脚本
  • OCaml的脚本项目
  • PHP
  • PHP(另一个)
  • 蟒蛇
  • 短暂聊天
  • CajuScript
  • MathEclipse

对于下载链接看在我的index.html上面提到。 对于任何java.net项目,使scripting.dev.java.net成为scripting.java.net只是删除了开发。 你可能有一个回购浏览旧网页。

一个值得注意的事情,JavaScript引擎(犀牛)被完全改写为Java 8的新名称是犀牛。 更多请见: http://openjdk.java.net/projects/nashorn/



Answer 3:

我不知道一个全面的列表。

不过值得指出的是,你可以使用几乎任何嵌入式JVM语言编写脚本的目的,只要它支持在运行时动态编译/执行。 这并不重要,如果它是JSR233与否。

例如,我在我的几个应用程序使用的Clojure的脚本(使用自定义DSL)。

我还没有尝试过自己,但我想你也可以使用Scala的: 斯卡拉作为脚本语言

FWIW,我的个人选择将是:

  • Clojure来表现力/ DSL的能力(如果你正在使用的脚本功能自己或与一个专家小组)
  • Groovy的 ,如果你的主要目标是易用性为最终用户(因为简单和类似与Java的)的


Answer 4:

此外,我找到了这个网页: http://java-source.net/open-source/scripting-languages

他们都在提其他脚本语言的,就像一个基本一样叫JBasic,LUA,LuaJava ... ePascal和许多其他



文章来源: Where can I find a list of available JSR-223 scripting languages? [closed]