Назовите Groovy "основной" метод от Maven
Я хочу вызвать метод "main" в классном классе на этапе "package" из maven.
Я попробовал плагин gmaven
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>src/main/groovy/CreateDeps.groovy</source>
</configuration>
</execution>
</executions>
</plugin>
Но я получаю "MissingPropertyException"
[ERROR] Failed to execute goal org.codehaus.groovy.maven:gmaven-plugin:1.0:execute
(default) on project Versions: groovy.lang.MissingPropertyException:
No such property: groovy for class: CreateDeps -> [Help 1]
Groovy файл выглядит как
CreateDeps.groovy
class CreateDeps {
static main(args) {
println "**************************I'm in groovy";
}
}
Я могу вызвать основной метод Java с помощью mojo. Я хочу добиться того же результата, используя Groovy.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>CreateDeps</mainClass>
<arguments>
<argument>arg1</argument>
<argument>arg2</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
заранее спасибо
1 ответ
Решение
Параметр конфигурации источника для плагина gmaven ожидает исходный код groovy, а не имя класса. Если вы хотите выполнить скрипт, используйте параметр конфигурации sourcepath с указанием пути к источнику, а не имени класса. т.е.