Nano Hash - криптовалюты, майнинг, программирование

Не удается скомпилировать Java 13 и Groovy 2.5.8

У меня есть проект (приложение Spring Boot), в котором я смешиваю Java и Groovy.

Я могу без проблем скомпилировать и запустить проект внутри IntelliJ Idea.

Но я не могу скомпилировать его с помощью Maven.

Java 12 работает нормально, но при переходе на 13 версию выдает следующие ошибки:

изображение трассировки ошибки

Пример конфигурации POM.xml:

    <properties>
    <java.version>13</java.version>

    <maven.compiler.source>${java.version}</maven.compiler.source>

    <maven.compiler.target>${java.version}</maven.compiler.target>

    <javax.version>1.5.4</javax.version>

    <groovy.version>2.5.8</groovy.version>

    <lombok.version>1.18.10</lombok.version>

....

 <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
        <configuration>
          <compilerId>groovy-eclipse-compiler</compilerId>
          <source>{java.version}</source>
          <target>{java.version}</target>
          <verbose>true</verbose>
          <fork>true</fork>
          <compilerArguments>
            <javaAgentClass>lombok.launch.Agent</javaAgentClass>
          </compilerArguments>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-eclipse-compiler</artifactId>
            <version>3.6.0-03</version>
          </dependency>
          <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-eclipse-batch</artifactId>
            <version>${groovy.version}-01</version>
          </dependency>
          <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.10</version>
          </dependency>
        </dependencies>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>${java.version}</source>
          <target>${java.version}</target>
        </configuration>
      </plugin>
    </plugins>
  </build>

Кто-нибудь знает, какой компилятор/плагин компилирует код Java и Groovy с версией Java 13?


  • github.com/groovy/groovy-eclipse/issues/963 с тегом как выпуск 3.6.0 (похоже, вся работа над ним завершена в начале этого года, но релиза еще нет) 16.01.2020
  • Пожалуйста, не используйте скриншоты. Вставьте соответствующие части текста в вопрос, чтобы их можно было найти и скопировать. 16.01.2020

Ответы:


1

Поддержка Java 13 начинается с версии groovy-eclipse-batch 2.5.8-03, основанной на Eclipse 4.14. https://www.eclipse.org/eclipse/news/4.13/jdt.php#Java_13

Вы используете 2.5.8-01. В настоящее время Groovy 2.5.10 является последним выпуском, и groovy-eclipse-batch:2.5.10-01 соответствует ему. И оба предлагают поддержку Java 13.

14.03.2020
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..