Назовите 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 с указанием пути к источнику, а не имени класса. т.е. src / main / groovy / CreateDeps.groovy

Другие вопросы по тегам