groovy 二进制版本 vs groovy-all-jar

val*_*rry 1 shell groovy jar classpath

当我想从http://groovy-lang.org/download.html下载 groovy 时,我得到了“二进制版本”。这意味着我有一个带有libbinembeddable文件夹的目录结构。在bin文件夹中有一个groovyshell 脚本,让我可以执行我自己的 groovy 源文件。此groovyshell 脚本使用lib目录中的 jars 。但是,我希望它使用embeddable目录中groovy-all-jar 中的 jars 。原因是,我不希望jar在我的类路径中的目录中的所有 jars,因为我需要使用不同的版本。

如何groovy使用 groovy-all-jar制作shell 脚本?

bla*_*rag 5

groovy-all 通常用于想要支持 Groovy 的应用程序。所以你只要把它放在你的类路径中。

如果您想使用 shell 脚本使用来自 groovy-all 的 GroovyConsole 之类的东西,则必须编辑 startGroovy。我建议执行以下操作...删除 lib 中的所有内容。然后找到 STARTER_CLASSPATH 是第一次设置的行并将其更改为使用您的 groovy-all。我还没有测试过,但这应该有效。

由于 groovy-all 仅包含 asm、commons-cli 和 antlr(在 jarjared 版本中)任何需要例如 Jline(shell 控制台)的东西都将不起作用