Интеграция groovy в java в gradle

Я пытаюсь интегрировать groovy в java с помощью инструментов сборки, таких как gradle. Есть несколько примеров со сборкой maven, но с gradle она все еще отсутствует.

Я попытался добавить плагин groovy, но для плагина компилятора, такого как gmavenplus. Я пытаюсь добавить его как зависимость, но не знаю, как добавить его в gradle.

1 ответ

Вы можете смешивать классы Java в проекте Groovy.

  1. Создайте проект Groovy, используяgradle init.
  2. Ваш источник Groovy будет вsource/main/groovyпапка.
  3. Добавитьsource/main/javaпапка (но см. комментарий ниже от Джеффа Скотта Брауна)
  4. Добавьте свои java-файлы в папку java обычным способом.
  5. Сделайте то же самое для своегоsrc/testпапка

Пример структуры папки src

      src
└───main
    ├───resources
    ├───groovy
    │   └───mixedbuildtest
    │           App.groovy
    │
    ├───java
    │   └───mixedbuildtest
    │           JavaApp.java

Пример исходного кода

Groovy-исходный код

      package mixedbuildtest

class App {
    String getGreeting() {
        return 'Hello from Groovy!'
    }

    static void main(String[] args) {
        println new App().greeting
        println new JavaApp().greeting
    }
}

Исходный код Java

      package mixedbuildtest;

class JavaApp {
    String getGreeting() {
        return "Hello from Java!";
    }
}

Пример вывода

      F:\projects\sx\MixedBuild>gradle run

> Task :app:run
Hello from Groovy!
Hello from Java!

BUILD SUCCESSFUL in 4s
3 actionable tasks: 3 executed
F:\projects\sx\MixedBuild>
Другие вопросы по тегам