Gradle Groovy v2.5.4的INDY版本在哪里?
当我迁移到Gradle5时,我的构建中断了,因为Gradle v5.2捆绑包与Groovy v2.5.4兼容。这些项目使用Groovy的构建Gradle Groovy v2.5.4的INDY版本在哪里?,gradle,groovy,Gradle,Groovy,当我迁移到Gradle5时,我的构建中断了,因为Gradle v5.2捆绑包与Groovy v2.5.4兼容。这些项目使用Groovy的构建 groovy-all-2.5.4-indy.jar 未为JCenter或MavenCentral解析此文件。但是我在这里找到了一份副本: : groovy-2.5.4-indy.jar 但是没有groovy-all-2.5.4-indy.jar 我不确定Gradle能做些什么来“解析”这个文件并找到它 有人能告诉我我应该从哪里得到这个JAR文
groovy-all-2.5.4-indy.jar
- :
groovy-2.5.4-indy.jar
- 但是没有
groovy-all-2.5.4-indy.jar
- 我使用的坐标是:“
”org.codehaus.groovy:groovy-all:2.5.4:indy
- 这仍然是正确的表达吗
- Im ny
我正在使用build.gradle
并尝试将其更改为jcenter()
mavenCentral()
- 这两个选项都没有找到有问题的罐子
最后一个问题是我们运行了一个Nexus实例。有没有办法迫使Nexus走出去寻找这个JAR?这不是完全确定的,但似乎在groovy 2.5.0之前的版本中就有了
-indy
JAR,因为这些版本支持1.7之前的java版本
indy jar的存在使您可以选择启用对Java1.7中引入的InvokedDynamic指令的支持,同时仍然支持1.7之前的java版本,其中不包括InvokedDynamic()
groovy 2.5似乎将jdk的最低要求提高到了以下几点:
JDK需求变化
Groovy 2.5需要JDK8+来构建,JDK7是我们支持的JRE的最低版本
(来自)
这将使支持invokedynamic和不支持invokedynamic的双重性变得不必要
因此,我的猜测是,他们只是转储了indyjar,并且总是在普通groovyjar文件集中包含invokedynamic指令,因为所需的jdk版本总是包含它 你从哪个版本升级?Groovy 2.5用Groovy-all-2.x.y.pom替换了Groovy-all-2.x.y.jar。这件事又让我头疼起来了。尽管Groovy语言站点上有相反的声明和文档,但我在公共存储库中找不到
Groovy all indy
包(POM或jar)。codehaus上似乎没有-indy
文件,例如:http://repo1.maven.org/maven2/org/codehaus/groovy/groovy-all/2.5.4/
。-indy
选项是否有效失效?至于为什么那个版本,看起来Grade是Groovy 2.5.4的专有版本,至少是v5.6版本。似乎是时候问另一个问题了。谢谢你,我想我可以继续问下去。这就是我遇到的Sonatype存储库,如我的问题所示。它有一个groovy-2.5.4-indy
,没有groovy-all
artifact。因此,目前还不清楚。调用动态页面仍然声明有两个版本:“groovy-x-y-z-indy.jar:与JDK 1.7+兼容,包含使用invokedynamic编译的groovy源代码”。