Мне нужен язык сценариев на основе JVM для моего приложения и хотелось бы посмотреть, что еще там, кроме Groovy, Ruby и Python.
Google продолжает указывать мне мертвую страницу на http://scripting.dev.java.net/
Мне нужен язык сценариев на основе JVM для моего приложения и хотелось бы посмотреть, что еще там, кроме Groovy, Ruby и Python.
Google продолжает указывать мне мертвую страницу на http://scripting.dev.java.net/
Это не официальный список, но вы можете начать здесь: http://en.wikipedia.org/wiki/List_of_JVM_languages
Rhino (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 тоже. Посмотрите здесь: как я могу вставить Луа в Java?
Старая страница находится здесь https://web.archive.org/web/20070610234337/https://scripting.dev.java.net/
Те, которые размещены на странице проекта JSR-223, можно просмотреть по адресу https://web.archive.org/web/20140909141915/https://java.net/projects/scripting/sources/svn/show/trunk/engines, но список:
Скриптовые движки JSR-223
Сценарии JSR 223, поддерживаемые в других местах
Ссылки на скачивание смотрите в index.html, который я упоминал выше. Для любого из проектов java.net просто удалите dev, чтобы scripting.dev.java.net стал scripting.java.net. Возможно, вам придется искать в репо для старых веб-страниц.
Одна примечательная вещь, движок JavaScript (Rhino) полностью переписан для Java 8. Новое имя - Nashorn. Для получения дополнительной информации см.: http://openjdk.java.net/projects/nashorn/
Я не знаю полного списка.
Однако стоит отметить, что вы можете использовать практически любой встраиваемый JVM-язык для сценариев, если он поддерживает динамическую компиляцию/выполнение во время выполнения. Это не имеет значения, если это JSR233 или нет.
Например, я использую Clojure для создания сценариев (с помощью собственного DSL) в нескольких моих приложениях.
Я не пробовал это сам, но я думаю, вы могли бы также использовать Scala: scala как язык сценариев
FWIW, мой личный выбор:
также я нашел эту страницу: http://java-source.net/open-source/scripting-languages
они упоминают другие языки script, как Basic, называемый JBasic, LUA, LuaJava... ePascal и многие другие