【问题标题】:How to add Ivy as module dependency to IntelliJ如何将 Ivy 作为模块依赖添加到 IntelliJ
【发布时间】:2021-07-11 21:49:32
【问题描述】:

我正在尝试将 Grape 用于:

@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7' )

但是,当我在 IntelliJ 中添加该行时,我收到以下消息:

Error:Groovyc: While compiling [project]: Cannot @Grab without Ivy, please add it to your module dependencies (NoClassDefFoundError: org/apache/ivy/plugins/resolver/DependencyResolver)

我试图查找如何执行此操作,但找不到清晰的分步指南(我对此很陌生)

添加 IvyIDEA 插件似乎无法解决问题。

我尝试下载该库,但我在搜索框中输入的内容似乎没有任何结果(ivy、apacheivy、apache-ivy、ivy-2.5 等)

然后我尝试从 http://ant.apache.org/ivy/download.cgi 下载 jar 本身 - 我选择了 apache-ivy-2.5.0-src.zip 选项并将其解压缩,然后尝试将其添加为依赖项:

当我选择解压后的文件夹时,我最终得到一个Empty Library - 也许它正在寻找 .jar 文件而不是文件夹?但是当我解压缩下载时,里面没有.jar,所以我不确定我是否下载错了..?

然后我想尝试在我的项目的 build.gradle 中添加 ivy 作为依赖项,但找不到如何添加它的语法 - 每个 google 搜索都将我带到有关 Ivy 本身的链接。 maven 网站的“gradle”选项卡也不起作用:

所以我在我的根项目的 build.gradle 中尝试了一些东西,如下所示:

dependencies {
    compile 'org.codehaus.groovy:groovy-all:2.3.11'
    testCompile group: 'junit', name: 'junit', version: '4.12'
    compile 'ant.apache.org:ivy-2.5.0'
}

IntelliJ 在我键入时找不到 ivy 依赖项,但我不知道它应该是什么样子,也找不到合适的语法。

我真的在为此苦苦挣扎,但我也觉得让这个工作对我来说应该不难。有人可以一步一步地给我一个超级明确的说明如何让我的 Grape 生产线用于 http-builder 工作吗?

【问题讨论】:

    标签: gradle intellij-idea groovy-grape


    【解决方案1】:

    我选择了 apache-ivy-2.5.0-src.zip 选项并将其解压缩,然后尝试将其添加为依赖项

    这是一个不准确的步骤。您需要下载“带有依赖项的二进制文件”,解压缩,然后在 IntelliJ IDEA 设置中选择“lib”文件夹作为依赖项(如第二个屏幕截图所示)。

    不过要小心。如果您的项目是 Gradle 项目,则需要在 build.gradle 文件中定义所有依赖项(因为它是 IntelliJ IDEA 的真实来源)。

    【讨论】:

    • 啊,好的,谢谢你的这一步!我已成功将“lib”文件夹添加为依赖项。对于您的第二点,您是否碰巧知道我需要添加到 build.gradle 的确切行?我尝试在 dependencies{} 块下添加“compile 'apache-ivy-2.5.0'”,但我收到一条消息说我的“notation is invalid” 然后我尝试“compile 'ant.apache.org:apache-ivy- 2.5.0'”,导致出现一条消息“找不到”有什么建议吗?
    • 你能分享一个可以复制的示例项目吗? GitHub 链接,或任何其他
    猜你喜欢
    • 1970-01-01
    • 2016-12-17
    • 2021-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多