Ошибка: язык с идентификатором 'R' не установлен. Установленные языки: [] - PullRequest
0 голосов
/ 07 февраля 2020

Я развертываю приложение JavaEE в Wildfly, работающем в контейнере Docker. Это приложение использует GraalVM для запуска сценария R. Среда настроена на использование GraalVM с Java 11, но когда я выполняю скрипт, я получаю сообщение об ошибке: «Язык с идентификатором« R »не установлен. Установленные языки: [].» Это мой pom. xml:

<!-- R Language -->
    <dependency>
        <groupId>org.graalvm.sdk</groupId>
        <artifactId>graal-sdk</artifactId>
        <version>19.3.1</version>
    </dependency>
    <dependency>
        <groupId>org.graalvm.truffle</groupId>
        <artifactId>truffle-api</artifactId>
        <version>19.3.1</version>
    </dependency>

Это вызов скрипта, который возвращает файл SVG:

try(var ctx = org.graalvm.polyglot.Context.newBuilder().allowAllAccess(true).build()) {
        var source = Source.newBuilder("R", new File("/opt/jboss/plot.R")).build();
        return ok(ctx.eval(source).as(Function.class).apply(ManagementFactory.getOperatingSystemMXBean().getSystemLoadAverage())).build();
    }

Есть идеи, что происходит?

1 Ответ

0 голосов
/ 07 февраля 2020

Вам не нужны sdk и трюфель в качестве зависимостей, если вы используете GraalVM, и размещение Truffle на пути к классам фактически нарушает некоторые предположения и, вероятно, вызывает вашу проблему. Попробуйте удалить трюфель из ваших зависимостей.

...