【问题标题】:Add a Java Module jar as a dependency into a Gradle project将 Java 模块 jar 作为依赖项添加到 Gradle 项目中
【发布时间】:2020-07-30 22:29:24
【问题描述】:

这是我的多项目 Gradle 设置:

.
└── gradle-module-project1
    ├── application
    ├── build.gradle.kts
    ├── gradlew
    ├── list
    ├── settings.gradle.kts
    └── utilities

applicationutiltieslist 是项目,每个项目内部都有一个 Java 模块。

即每个项目都有自己的src/main/java/module-info.java文件和build.gradle.kts文件。

我还有另一个具有类似项目结构的 Gradle 项目,例如:

.
└── gradle-module-project2
    ├── build.gradle.kts
    ├── gradlew
    ├── settings.gradle.kts
    └── superapi

superapi 是一个 Java 模块并公开一个包。

我已将superapi 构建为.jar,使用./gradlew build

现在我正在尝试将superapi.jar 添加为gradle-module-project1 的依赖项,以便gradle-module-project1 可以使用从superapi 模块导出的公共类。

在 IntelliJ 中,我已经完成了:

Project Structure -> Modules -> Dependencies -> Add -> Jars/Directory

选中创建的jar,可以在我项目的External Libraries看到jar。

但是当我尝试添加时:

requires com.test.modules.superapi;

module-info.javaapplication,我收到此错误:

Module is not in dependencies: com.test.modules.superapi

建议的修复方法是:Add library: 'superapi.jar!' to classpath,但这无济于事。

任何想法我做错了什么?

【问题讨论】:

  • 请查看我的答案以完全完成它(gradle build AND gradle run with ServiceLoader 等)here

标签: java gradle intellij-idea


【解决方案1】:

最后你有 2 个项目,必须在 2 个项目之间建立关系

在 gradle-module-project1 中添加 dependency 作为 nexus repo g:a:vlocal code include, project()

【讨论】:

    猜你喜欢
    • 2019-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多