在maven工程中使用groovy

maven中使用groovy

 

Groovy由于轻便的语法,和java的无缝兼容,深受人们的喜爱。

使用ide,像eclipse、intellij idea都有专属的插件来编译和运行groovy,maven也有特定的plugin来支持groovy,只是需要配置一下。

 

 

Maven支持groovy的插件叫Gmaven。

需要在pom中引用:

 

ContractedBlock.gif ExpandedBlockStart.gif 代码
 
   
< plugin >
< groupId > org.codehaus.groovy.maven </ groupId >
< artifactId > gmaven-plugin </ artifactId >
< version > 1.0 </ version >
< executions >
< execution >
< goals >
< goal > generateStubs </ goal >
< goal > compile </ goal >
< goal > generateTestStubs </ goal >
< goal > testCompile </ goal >
</ goals >
</ execution >
</ executions >
</ plugin >

 

 

 

 

这里面包含了4个goal,分别用来将groovy源文件生成临时的、与之相对应的 Java 源文件,使得maven编译java文件时不会报错。

 

除了这些,官方说还需要引入一个runtime依赖:

 

ContractedBlock.gif ExpandedBlockStart.gif 代码
 
   
< dependency >
< groupId > org.codehaus.groovy.maven.runtime </ groupId >
< artifactId > gmaven-runtime-default </ artifactId >
< version > 1.0-rc-3 </ version >
</ dependency >

 

 

 

工程结构: 

Groovy插件默认编译groovy的路径在main/groovy下。

<project-root>/

  |

  +-pom.xml

  |

  +-src/

 |  |

 |  +- main/

 |  |  |

 |  |  +- groovy/(source location for Groovy and optional Java sources)

 |  |  |

 |  +- test/

 |  |  |

 |  |  +- groovy/(source location for Groovy and optional Java test sources)

 |  |  |

  ...

默认只有在main下的groovy和test下的groovy文件夹内的groovy文件才会被compile。

假如goovy文件中的package为test.groovy,那么就会在deploy/classes下建立一个test/groovy文件夹,里面放上编译好的class文件。

所有在main/groovy下的*.groovy文件都会被编译到target/classes目录下,所有在test/groovy下的*.groovy文件都会被编译到target/test-classes目录下。

 

如果groovy文件没有在main/groovy目录下,就需要配置gmaven插件了。

ContractedBlock.gifExpandedBlockStart.gif代码
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<sources>
<fileset>
<directory>${pom.basedir}/src/main/script</directory>
<includes>
<include>**/*.groovy</include>
</includes>
</fileset>
</sources>
</configuration>
</execution>
</executions>
</plugin>

 


 
像这样的话就会把main/script下的*.groovy文件包含进来进行编译。
 
 

转载于:https://www.cnblogs.com/xiziyin/archive/2010/03/29/1699860.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值