gpt4 book ai didi

maven - Gradle 看不到来自 mavenLocal 的 Kotlin 依赖

转载 作者:行者123 更新时间:2023-12-02 12:59:04 25 4
gpt4 key购买 nike

我正在尝试将我的 Kotlin Gradle 项目的一部分提取到一个单独的存储库中。这是一个 Kotlin 多平台项目 ( https://github.com/krzema12/fsynth ),我想提取 whatever sits in 'plotassert' package .

我关注了https://kotlinlang.org/docs/tutorials/multiplatform-library.html .为了在本地测试它,我通过执行 publishToMavenLocal Gradle 的任务将新提取的项目发布到本地 Maven 存储库,然后将 mavenLocal() 放入主项目的 repositories 部分( here ,作为第一项)。在 core 项目的依赖项 ( here ) 中,我放置了

compile "it.krzeminski.plotassert:PlotAssert:0.0.1"

问题是 IntelliJ/Gradle 看不到这种依赖性,在尝试使用代码中的某些类时也是如此:

not visible

如果我故意使用一些错误的依赖项名称,Gradle 会注意到:

wrong name

所以这意味着它以某种方式看到本地存储库中存在依赖关系。我还在 ~/.m2/repository 中看到本地出版物生成了一些文件:

:~/.m2/repository$ tree
.
└── it
└── krzeminski
└── plotassert
├── PlotAssert
│   ├── 0.0.1
│   │   ├── PlotAssert-0.0.1.module
│   │   └── PlotAssert-0.0.1.pom
│   └── maven-metadata-local.xml
├── PlotAssert-js
│   ├── 0.0.1
│   │   ├── PlotAssert-js-0.0.1.jar
│   │   ├── PlotAssert-js-0.0.1.module
│   │   ├── PlotAssert-js-0.0.1.pom
│   │   └── PlotAssert-js-0.0.1-sources.jar
│   └── maven-metadata-local.xml
├── PlotAssert-jvm
│   ├── 0.0.1
│   │   ├── PlotAssert-jvm-0.0.1.jar
│   │   ├── PlotAssert-jvm-0.0.1.module
│   │   ├── PlotAssert-jvm-0.0.1.pom
│   │   └── PlotAssert-jvm-0.0.1-sources.jar
│   └── maven-metadata-local.xml
├── PlotAssert-linux
│   ├── 0.0.1
│   │   ├── PlotAssert-linux-0.0.1.klib
│   │   ├── PlotAssert-linux-0.0.1.module
│   │   ├── PlotAssert-linux-0.0.1.pom
│   │   └── PlotAssert-linux-0.0.1-sources.jar
│   └── maven-metadata-local.xml
└── PlotAssert-metadata
├── 0.0.1
│   ├── PlotAssert-metadata-0.0.1.jar
│   ├── PlotAssert-metadata-0.0.1.module
│   ├── PlotAssert-metadata-0.0.1.pom
│   └── PlotAssert-metadata-0.0.1-sources.jar
└── maven-metadata-local.xml

Gradle 或 IntelliJ 的这种行为是不是不正确?我的理解是它应该在“源集”下列出此依赖项,就像在名称不正确的情况下所做的那样。

我还没有尝试将新提取的项目发布到一些在线存储库,因为我希望有机会在本地迭代而不是发布每个更改。

你能告诉我我在这里遗漏了什么吗?

最佳答案

原来我有

enableFeaturePreview('GRADLE_METADATA')

在库项目中,但在消费者项目中没有。添加它并将 Gradle 包装器版本升级到 4.9 解决了这个问题。

关于maven - Gradle 看不到来自 mavenLocal 的 Kotlin 依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53973367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com