Java Maven使用依赖项的当前版本成功构建,但仍然引用旧版本

Java Maven使用依赖项的当前版本成功构建,但仍然引用旧版本,java,maven,Java,Maven,我已在本地mvn.m2注册表中使用mvn clean install成功安装了依赖项的当前版本(通过cd确认进入.m2存储库) 然后,我修改了项目的pom.xml,以包含新版本号: <dependency> <groupId>com.xyz.lib</groupId> <artifactId>xyz-lib-abc-model</artifactId>

我已在本地mvn
.m2
注册表中使用
mvn clean install
成功安装了依赖项的当前版本(通过cd确认进入
.m2
存储库)

然后,我修改了项目的
pom.xml
,以包含新版本号:

        <dependency>
            <groupId>com.xyz.lib</groupId>
            <artifactId>xyz-lib-abc-model</artifactId>
            <version>1.4.0-SNAPSHOT</version>
        </dependency>
在我看来这是正确的

我尝试过使用
,但它使项目无法构建,并且无法检测模型

有人知道发生了什么,以及如何让maven得到正确的版本吗


提前谢谢你

我在IntelliJ上看到过这个问题。 如果不再需要旧版本,可以将cd刻录到.m2目录并手动删除旧版本。
但是您需要保留这两个版本,您可以使用pom.xml作为新项目打开该项目。这将解决问题

我的第一个猜测是,您的想法中使用的maven类型与您在终端中使用的类型不同。:)

您可以设置已安装的maven,而不是捆绑的maven


或者另一种解决方案是在pom.xml中进行“刷新/重新导入”。它将根据pom.xml调查类路径,并刷新所需的类路径

您应该在这里看到“重新导入”按钮

如果您根本看不到Maven,这意味着您还没有将您的项目作为Maven项目添加到IDEA中

然后请执行以下操作 1.右键单击pom.xml 2.2.添加为maven项目

尝试从IntelliJ中的本地m2重新导入依赖项,如:

  • 在IntelliJ中打开项目视图
  • 右键单击pom.xml文件,然后单击
  • 选择Maven-Reimport(如果这对您有效),IntelliJ将添加
    对项目的依赖关系
  • 检查所需的依赖项是否已添加到文件-项目中 结构-项目设置-库和文件-项目 结构-模块-依赖项

尝试以下方法:

  • 关闭IntelliJ中的项目
  • 文件-->打开
  • 查找项目的pom.xml,而不是idea项目文件
  • 打开这个pom.xml,它将根据在这个新的pom.xml中找到的信息重新构建所有依赖关系模型(我假设它不再有旧的依赖关系)

  • DependencyManagement部分在这种情况下是不相关的-提到它是因为你在问题中说你已经尝试过了-所以不用麻烦了,它会为你节省一些时间:)

    你是否尝试过从IntelliJ重新导入maven?旧模型(
    0.1.1-SNAPSHOT
    )不幸的是,它不是本地的,也不在我的本地注册表中。你知道如何解决这个问题吗?你只需要从本地电脑的本地.m2存储库中访问和删除它。远程工件下载并存储在那里。如果从本地repo访问旧版本,你知道吗。@Katie没问题。
    [INFO] +- com.xyz.lib:xyz-lib-abc-model:jar:1.4.0-SNAPSHOT:compile