目录
一、背景介绍
二、报错信息
三、原因分析与处理
1、注意maven与jar包版本匹配问题
2、缺少资源
参考博文
一、背景介绍
在自己笔记本虚拟机中导入一个已经写好的Maven工程,经过前文中介绍的离线加载maven处理方法,解决的大量jar包找不到的问题后,此时虽然能够编译成功但是运行后功能无法使用,且仍然发现pom.xml文件中出现报错。
虚拟机中操作系统为:Ubuntu 18.04.4 LTS
IDEA软件版本信息为:
IntelliJ IDEA 2018.3.5 (Ultimate Edition)
Build #IU-183.5912.21, built on February 26, 2019
Licensed to https://zhile.io
You have a perpetual fallback license for this version
Subscription is active until July 8, 2089
JRE: 1.8.0_152-release-1343-b28 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 5.4.0-122-generic
注意:
离线下IDEA打开拷贝的完整工程,解决工程代码大量报错的问题_nanke_yh的博客-CSDN博客文中有提到修改maven设置后无导入效果,需要等待很久的问题。这主要是idea缓存的问题,这里可以主动去清下缓存使其读取,具体步骤为:File->Invalidate Caches/Restart…,该功能会清缓存并重启软件的。
二、报错信息
Q1:‘settings.xml’ has syntax errors less… (Ctrl+F1)
Inspection info: Inspects a Maven model for resolution problems
Q2:Parent ‘org.springframework.boot:spring-boot-starter-parent:2.3.0.RELEASE’ has problems less… (Ctrl+F1)
Inspection info: Inspects a Maven model for resolution problems.
三、原因分析与处理
1、注意maven与jar包版本匹配问题
针对问题二Parent ‘org.springframework.boot:spring-boot-starter-parent:2.3.0.RELEASE’ has problems,检查发现由于代码一致,物理拷贝工程后导入的,出现以上报错,对比台式机发现其IDEA版本为2020.1.1而虚拟机中的idea版本为2018。这样导致在配置maven的Maven home Directory项选择Bundled (Maven 3)后其自身的版本不一致。
虚拟机中选择Bundled (Maven 3)的版本为:Version 3.3.9,与台式机上Version 3.6.3有较大的差别。为此在虚拟机中该项选择/opt/Maven/apache-maven-3.6.1版本为Version 3.6.1。此时再import maven后,发现问题二消失了。
2、缺少资源
对于问题一,离线下始终不能解决,分析原因为版本不对应(只能说离线的工程文件不可直接移植的),缺少了部分的资源文件,此时只能通过网络去下载该部分资源。
右击项目->maven->download source and documention
之后会去访问网络下载资源,时间比较长。
下载完成后,直接Reimport maven或者在右侧的maven窗口双击install,就会发现该问题也解决了。
参考博文
出现错误 Project ‘org.springframework.boot:spring-boot-starter-parent’ not found_Baron keller的博客-CSDN博客
inspects a maven model for resolution problems_sinat_36710456的博客-CSDN博客