这似乎是一项简单的任务,但我已经和我的两个同事讨论过这个问题,但没有人明白问题出在哪里。我们有一个多模块 Maven 项目,其所有子模块都继承自根 POM 文件。在根 POM 文件中,我添加了此依赖项,该依赖项是从 Three Ten Backport website 复制的。 :
<dependency>
<groupId>org.threeten</groupId>
<artifactId>threetenbp</artifactId>
<version>1.3.8</version>
</dependency>
它位于所有其他依赖项所在的 dependencyManagement 部分下。所有其他依赖项都工作正常。但是,当我尝试将“三个十”类导入模块内的类中时,出现错误。
import org.threeten.bp.LocalDateTime;
当我尝试构建项目时,构建失败,并显示此错误消息。
error: package org.threeten.bp does not exist
我已经尝试过以下操作:
- 在项目目录上进行 mvn clean install,在添加 import 语句之前工作正常,但在添加 import 语句之后失败。
- 在 Spring Tool Suite 中的所有模块上运行“maven update”。
- 在 ~/.m2/repository 中搜索了 org. Threeten.bp 软件包,但本地存储库中没有任何文件。
这里可能出现什么问题?为什么“三十反向移植”依赖项没有与所有其他依赖项一起安装?它位于 Maven Central 上,所以我认为我不需要将任何存储库添加到我的 POM 文件中,是吗?
最佳答案
添加<dependency>
到<dependencyManagement>
部分本身并不添加对项目的依赖项,它只是建立了一个默认版本供子项目使用。
您还需要添加 <dependency>
转到主<dependencies>
部分(如果也添加到 <version>
,则不包含 <dependencyManagement>
)以供项目使用。
关于java - 无法从“三十向后移植”导入类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53561946/