根据groovy-maven-plugin文档,可以指定要在 maven 构建中使用的特定 groovy 版本。这在最高 2.4.9 的groovy-all版本中成功,但是当我调用“mvn validate”时,2.5.0 或更高版本将使用以下消息破坏构建:
[错误] 无法执行目标 org.codehaus.gmaven:groovy-maven-plugin:2.1.1:execute (default) on project groovy3demo: 目标执行默认 org.codehaus.gmaven:groovy-maven-plugin:2.1.1 :执行失败:插件 org.codehaus.gmaven:groovy-maven-plugin:2.1.1 或其依赖项之一无法解析:找不到工件 org.codehaus.groovy:groovy-all:jar:3.0.6中央(https://repo.maven.apache.org/maven2)-> [帮助 1]
原因是mavencentral repo中没有“groovy-all-3.0.6.jar” 。显然 'groovy-all-<version>.jar 自版本 2.5.0-beta3 以来不再部署,只有源代码和 javadoc。2.4.9 版似乎是成功的最新版本。
所以我的问题是:如何在我的 Maven 构建中使用 groovy 3.x?
谢谢你的任何提示。
这是我的pom.xml并且(除了 maven 安装)你不需要更多的东西来重现问题:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>de.zaphodbeeblebrox</groupId>
<artifactId>groovy3demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>groovy-maven-plugin</artifactId>
<version>2.1.1</version>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>3.0.6</version> <!-- 2.4.9 is the latest successful version -->
</dependency>
</dependencies>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
println '*** Generated Version Numbers and Timestamps ***'
println ' [...]'
</source>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>