写点什么

Maven Could not find artifact com.ruoyi:ruoyi-framework:pom:3.8.5 in public

作者:Andy
  • 2023-06-05
    北京
  • 本文字数:4686 字

    阅读完需:约 15 分钟

一、问题描述


使用 RuoYi-Vue 开源项目的过程中,在 ruoyi-admin 模块下进行工程打 war 包时,报出了一下错误。


项目的 SSH 地址:


git@gitee.com:y_project/RuoYi-Vue.git
复制代码


错误截图如下:




部分错误日志如下:


[INFO] [INFO] -----------------------< com.ruoyi:ruoyi-admin >------------------------[INFO] Building ruoyi-admin 3.8.5[INFO] --------------------------------[ war ]---------------------------------Downloading from public: https://maven.aliyun.com/repository/public/com/ruoyi/ruoyi-framework/3.8.5/ruoyi-framework-3.8.5.pomDownloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/com/ruoyi/ruoyi-framework/3.8.5/ruoyi-framework-3.8.5.pom[WARNING] The POM for com.ruoyi:ruoyi-framework:jar:3.8.5 is missing, no dependency information availableDownloading from public: https://maven.aliyun.com/repository/public/com/ruoyi/ruoyi-quartz/3.8.5/ruoyi-quartz-3.8.5.pomDownloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/com/ruoyi/ruoyi-quartz/3.8.5/ruoyi-quartz-3.8.5.pom[WARNING] The POM for com.ruoyi:ruoyi-quartz:jar:3.8.5 is missing, no dependency information availableDownloading from public: https://maven.aliyun.com/repository/public/com/ruoyi/ruoyi-generator/3.8.5/ruoyi-generator-3.8.5.pomDownloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/com/ruoyi/ruoyi-generator/3.8.5/ruoyi-generator-3.8.5.pom[WARNING] The POM for com.ruoyi:ruoyi-generator:jar:3.8.5 is missing, no dependency information availableDownloading from public: https://maven.aliyun.com/repository/public/com/ruoyi/ruoyi-framework/3.8.5/ruoyi-framework-3.8.5.jarDownloading from public: https://maven.aliyun.com/repository/public/com/ruoyi/ruoyi-generator/3.8.5/ruoyi-generator-3.8.5.jarDownloading from public: https://maven.aliyun.com/repository/public/com/ruoyi/ruoyi-quartz/3.8.5/ruoyi-quartz-3.8.5.jarDownloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/com/ruoyi/ruoyi-framework/3.8.5/ruoyi-framework-3.8.5.jarDownloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/com/ruoyi/ruoyi-generator/3.8.5/ruoyi-generator-3.8.5.jarDownloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/com/ruoyi/ruoyi-quartz/3.8.5/ruoyi-quartz-3.8.5.jar
复制代码


Could not find artifact com.ruoyi:ruoyi-framework:pom:3.8.5 in public (https://maven.aliyun.com/repository/public)
复制代码


Could not find artifact com.ruoyi:ruoyi-quartz:pom:3.8.5 in public (https://maven.aliyun.com/repository/public)
复制代码


Could not find artifact com.ruoyi:ruoyi-quartz:pom:3.8.5 in public (https://maven.aliyun.com/repository/public)
复制代码


二、问题分析


根据 Idea 报错的信息,aliyun.com 远程仓库找不到相关的包。


首先疑惑的是,难道是阿里云的镜像仓库出现问题了吗?是不是服务器出错了?要不然,不可能获取不到相应的包。那么,是不是需要在 Maven 配置文件 settings.xml 更换一下远程仓库地址呢?


尝试直接在浏览器打开链接 https://maven.aliyun.com/repository/public,看一下是否可以直接显示仓库的文件包目录,结果页面 404 报错。



这是我的一个直接想法,算是一种尝试。毕竟,我是不知道阿里云仓库是不能直接通过浏览器查看的。


接着,通过对阿里云 404 页面提示信息的理解,加上对于阿里的技术实力以及业界的地位和依赖程度的判断,它们的服务器大概率是不会有问题的。那么,问题不应该出在阿里云远程仓库上,还需要继续分析。


既然问题不出在远程仓库上,是不是本地的 Maven 有问题呢?


接下来就去查看一下 Idea 的 Maven 配置,查看之后,应该是没有问题的,毕竟,其他的项目也都是如此使用的。



配置问题不大,就去看下报错的包,在本地仓库的情况吧。到达“~/.m2/repository/com/ruoyi”目录下,为了能够查看所有文件的情况,故而使用了 Git 第三方插件指令 tree 查看文件目录树情况,在 Git-Bash 命令行输入了 tree 指令。



到了这一步,其实就应该明白,所有问题的根源,就是本地没有相应的 jar。正是因为本地没有相应的 jar 包,才会默认去阿里云远程仓库尝试获取 jar 包的。


这下就有些困惑了,那么,怎么解决呢?


为了能够尽快解决问题,省掉自己思考的能量,一种比较偷懒的做法,自然就是去网上搜索相关信息。


在 Baidu 搜索的结果,还真的找到一条很重要的相关信息,对方的问题与当下的遇到的这个问题很类似。页面的链接地址:https://gitee.com/y_project/RuoYi/issues/I4TZJ8



由此,可以了解到,ruoyi 相关的包,是不会存储在远程仓库的。


进一步思考,我就明白了。RuoYi-Vue 项目的各个模块是分开的,那么,本文开头提到的错误,涉及的相关的 Jar 包,也就是:


  • com.ruoyi:ruoyi-framework:pom:3.8.5

  • com.ruoyi:ruoyi-quartz:pom:3.8.5

  • com.ruoyi:ruoyi-generator:pom:3.8.5


它们是需要自己在本地打包,而后放到本地仓库里的。换句话说,Maven 打包的顺序和指令都不完全正确。


我应该使用 Maven 的 install 指令,把以上的包打出来,而后,它们会自动存放至本地的仓库目录“~/.m2/repository/com/ruoyi”下。


到了这里,问题真正解法就算是找到了。


三、问题解决


基于以上的问题分析,因此,只需要把 RuoYi-Vue 项目下的对应模块,使用 Maven 的 install 打好包就可以了。


这里有两种方式。


第一种:分别到 ruoyi-framework、ruoyi-quartz、ruoyi-generator 目录下打包


这种方式就是缺什么就打什么包,因此,可能会比较慢,也可能没有办法一次性地把相关的包打全打好。


因此,可以采取接下来的第二种方式。


第二种:在 Idea 的 Maven 窗口下,通过 ruoyi 下的 install 打包


这样就可以把所有涉及的相关包都打好了,包括我们需要的 ruoyi-admin。



打包部分日志如下:


"C:\Program Files\Java\jdk-11.0.9\bin\java.exe" -Dmaven.multiModuleProjectDirectory=C:\Projects\open\RuoYi-Vue -Dmaven.home=C:\App\apache-maven-3.6.3 -Dclassworlds.conf=C:\App\apache-maven-3.6.3\bin\m2.conf "-Dmaven.ext.class.path=C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.3.4\plugins\maven\lib\maven-event-listener.jar" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.3.4\lib\idea_rt.jar=10141:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.3.4\bin" -Dfile.encoding=UTF-8 -classpath C:\App\apache-maven-3.6.3\boot\plexus-classworlds-2.6.0.jar;C:\App\apache-maven-3.6.3\boot\plexus-classworlds.license org.codehaus.classworlds.Launcher -Didea.version2019.3.4 install[INFO] Scanning for projects...[INFO] ------------------------------------------------------------------------[INFO] Reactor Build Order:[INFO] [INFO] ruoyi                                                              [pom][INFO] ruoyi-common                                                       [jar][INFO] ruoyi-system                                                       [jar][INFO] ruoyi-framework                                                    [jar][INFO] ruoyi-quartz                                                       [jar][INFO] ruoyi-generator                                                    [jar][INFO] ruoyi-admin                                                        [war][INFO] [INFO] --------------------------< com.ruoyi:ruoyi >---------------------------[INFO] Building ruoyi 3.8.5                                               [1/7][INFO] --------------------------------[ pom ]---------------------------------
......
[INFO] --- maven-war-plugin:3.1.0:war (default-war) @ ruoyi-admin ---[INFO] Packaging webapp[INFO] Assembling webapp [ruoyi-admin] in [C:\Projects\open\RuoYi-Vue\ruoyi-admin\target\ruoyi-admin][INFO] Processing war project[INFO] Webapp assembled in [424 msecs][INFO] Building war: C:\Projects\open\RuoYi-Vue\ruoyi-admin\target\ruoyi-admin.war[INFO] [INFO] --- spring-boot-maven-plugin:2.1.1.RELEASE:repackage (default) @ ruoyi-admin ---[INFO] Replacing main artifact with repackaged archive[INFO] [INFO] --- maven-install-plugin:2.4:install (default-install) @ ruoyi-admin ---[INFO] Installing C:\Projects\open\RuoYi-Vue\ruoyi-admin\target\ruoyi-admin.war to C:\Users\andy\.m2\repository\com\ruoyi\ruoyi-admin\3.8.5\ruoyi-admin-3.8.5.war[INFO] Installing C:\Projects\open\RuoYi-Vue\ruoyi-admin\pom.xml to C:\Users\andy\.m2\repository\com\ruoyi\ruoyi-admin\3.8.5\ruoyi-admin-3.8.5.pom[INFO] ------------------------------------------------------------------------[INFO] Reactor Summary for ruoyi 3.8.5:[INFO] [INFO] ruoyi .............................................. SUCCESS [ 0.243 s][INFO] ruoyi-common ....................................... SUCCESS [ 1.884 s][INFO] ruoyi-system ....................................... SUCCESS [ 0.273 s][INFO] ruoyi-framework .................................... SUCCESS [ 0.270 s][INFO] ruoyi-quartz ....................................... SUCCESS [ 1.678 s][INFO] ruoyi-generator .................................... SUCCESS [ 0.311 s][INFO] ruoyi-admin ........................................ SUCCESS [ 4.859 s][INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 9.825 s[INFO] Finished at: 2023-06-05T12:13:26+08:00[INFO] ------------------------------------------------------------------------
复制代码


好了,问题解决。


四、启示


对于这个问题的解决,编写整篇文章,重新梳理解决的思考过程和解决步骤,让我明白一个道理。


面对任何错误,首先不要着急,不要浮躁,看清楚提示的信息很重要。不仔细阅读信息,很可能一直在问题的关键外绕去绕来。


其次,就是要有步骤地,一步一步来,自然就能够慢慢找到问题的根源在哪里。


最后,我认为,一定要刻意练习,不要一遇到问题,就都马上去网上搜索一番,不要让马上快速获取答案作为一种下意识的思维。


看似结果很重要,但是,高质量的思考过程和思维逻辑更重要。问题是需要马上解决,但是,有序科学的思考,应该是花不了多少时间的。反而是那种急躁的情绪,耽误了很多时间。


当然,要赚快钱,还是慢钱,决定权就在自己手上了。


好了,就写到这里。


感谢你的阅读,文中如有不妥之处,还望指出,谢谢。


发布于: 刚刚阅读数: 3
用户头像

Andy

关注

强准备+强信念+强执行 2019-11-21 加入

以前是T型人才,当下是π型人才,未来是梳子型人才

评论

发布
暂无评论
Maven Could not find artifact com.ruoyi:ruoyi-framework:pom:3.8.5 in public_Andy_InfoQ写作社区