Выполните мой отличный сценарий с муравьем или мавеном - PullRequest
8 голосов
/ 12 октября 2010

У меня есть следующее:

  • 1 Java-класс
  • 1 bat файл (запускает скрипт groovy)
  • 1 groovy file

Все в одной папке.

Теперь я хочу использовать Maven или Ant для запуска файла groovy, но не могу заставить его работать.Есть кто-то, кто может показать мне, как написать этот pom.xml или build.xml?Я больше не хочу использовать файл летучей мыши.

Ответы [ 3 ]

17 голосов
/ 12 октября 2010

С Maven используйте плагин gmaven. С его документация :

Выполнить локальный скрипт Groovy

<plugin>
    <groupId>org.codehaus.gmaven</groupId>
    <artifactId>gmaven-plugin</artifactId>
    <version>1.3</version>
    <executions>
        <execution>
            <phase>generate-resources</phase>
            <goals>
                <goal>execute</goal>
            </goals>
            <configuration>
                <source>${pom.basedir}/src/main/script/myscript.groovy</source>
            </configuration>
        </execution>
    </executions>
</plugin>

И вызвать указанную фазу.

Или, если вы не хотите привязывать плагин к определенной фазе, вы можете настроить его следующим образом:

<plugin>
    <groupId>org.codehaus.gmaven</groupId>
    <artifactId>gmaven-plugin</artifactId>
    <version>1.3</version>
    <configuration>
        <source>
           println "Hi"
        </source>
    </configuration>
</plugin>

И звоните

mvn groovy:execute
3 голосов
/ 13 октября 2010

Существует Groovy плагин для ANT, который может вызывать Groovy скрипты

<groovy src="helloWorld.groovy"/>

Я бы порекомендовал объединить его с ivy , который может загрузить необходимые банки дляВы, как и в примере Maven, приведенном ранее.

build.xml

<project name="demo" default="run" xmlns:ivy="antlib:org.apache.ivy.ant">

    <target name="resolve">
        <ivy:resolve/>
        <ivy:cachepath pathid="build.path"/>
    </target>

    <target name="run" depends="resolve">
        <taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy" classpathref="build.path"/>

        <groovy src="helloWorld.groovy"/>
    </target>

</project>

ivy.xml

<ivy-module version="2.0">
    <info organisation="org.myorg" module="demo"/>
    <dependencies>
        <dependency org="org.codehaus.groovy" name="groovy-all" rev="1.7.4" conf="default"/>
    </dependencies>
</ivy-module>
2 голосов
/ 12 октября 2010

Вы можете сделать это через Ant, как показано с полным примером здесь .См. Раздел Компиляция и запуск с Ant .

Вам необходимо загрузить ant , убедиться, что установлены переменные ANT_HOME и JAVA_HOME, и поставить ANT_HOME /bin в вашем PATH.

После того, как у вас есть build.xml, вы можете вызвать ant в командной строке, которая запустит build.xml

Подробнее о Groovy муравей задание здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...