Maven问题总结

简介: Maven问题总结

1.jar包下载失败,导致生成lastUpdated文件

第一次因为没有联网或者或者其它原因,导致下载jar失败,以后依然下载失败。
原因 : 因为第一次下载失败时,会在~\.m2\repository 中生成对应jar包的lastUpdated文件,如xxx.jar.lastUpdated,
因为有这个lastUpdated文件,所以以后都不会真正下载xxx.jar.lastUpdated。 <br>
解决方法:

 1. 在执行mvn <commond>之前把lastUpdated 文件删除
 2. 直接拷贝一个jar到此目录下

2.Maven缺少依赖包,强制更新

mvn clean install -e -U
-e详细异常,-U强制更新

3.mvn deploy

  1. 要直接上传jar,必须在主pom中添加对应的repository
   <distributionManagement>
        <repository>
            <id>releases</id>
            <name>Nexus Release Repository</name>
            <url>your releases repositories url</url>
        </repository>
        <snapshotRepository>
            <uniqueVersion>false</uniqueVersion>
            <id>snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>your snapshot repositories url</url>
        </snapshotRepository>
    </distributionManagement>
  1. 如果只想上传jar,不想上传war
    在不想上传的工程pom里面添加
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <configuration>
                <skip>true</skip>
            </configuration>
    </plugin>
  1. 如果想单独上传某个jar
mvn deploy:deploy-file -DgroupId={groupId} -DartifactId={artifactId} -Dversion={version} -Dpackaging=jar -Dfile={path} -Durl={your repository url} -DrepositoryId={your repository id}

DgroupId和DartifactId构成了该jar包在pom.xml的坐标

Dfile表示需要上传的jar包的绝对路径
Durl私服上仓库的位置,打开nexus——>repositories菜单,可以看到该路径。
DrepositoryId服务器的表示id,在nexus的configuration可以看到。
Dversion表示版本信息,怎样得到一个jar包准确的版本呢?

如果单独上传某个jar,而项目为多模块的时候,开发新的迭代版本的时候,更新了一下新版本的jar,同时更新了父模块的版本号,此时必须把父模块的pom.xml deploy到私服上,否则报错。 **因为**     子模块的打包方式为jar,父模块的打包方式 为pom,,子模块依赖于父模块,所以会报错。

如果报错,极有可能是url或者repositoryId写错了

Access denied to: {}.jar, ReasonPhrase: Forbidden.

检查是否缺少权限,在 .m2/settings.xml中配置权限


作者:glowd
原文:https://blog.csdn.net/zengqiang1/article/details/52841090
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
流计算 API Apache
Apache Flink 零基础入门(一):基础概念解析
本文是根据 Apache Flink 基础篇系列直播整理而成,由 Apache Flink PMC 戴资力与阿里巴巴高级产品专家陈守元共同分享。Apache Flink 系列入门教程每周更新一期,持续推送。
Apache Flink 零基础入门(一):基础概念解析
|
6月前
|
消息中间件 人工智能 Apache
阿里云两大 AI 原生实践荣获 2025 年度 OSCAR “开源+”典型案例
恭喜阿里云微服务引擎 MSE、Apache RocketMQ for AI 获权威认可!
392 64
|
3月前
|
人工智能 API 开发者
2026年 AI LLM API 开发趋势:技术、架构与应用深度探讨
2026年,LLM API已成为企业开发核心。本文详解API调用、Prompt工程、多轮对话与流式输出,结合聚合平台如poloapi.top,助力开发者高效构建AI应用,把握技术前沿。
|
4月前
|
人工智能 边缘计算 算法
2025年12月数字人厂商综合实力榜单发布,揭示产业三大演进方向
2025年数字人产业告别野蛮生长,形成头部领跑、腰部深耕、创新突破的格局。权威榜单显示,技术、落地、商业与生态成核心竞争力,行业集中度提升,前十大厂商市占超65%。世优科技等凭借全栈自研与场景融合优势领先,政务、文旅、教育等垂直领域涌现特色厂商。技术迈向“形神兼备”,应用从示范走向刚需,生态标准化加速推进,数字人正深度融入千行百业,成为降本增效与价值共创的新引擎。
397 1
|
2月前
|
人工智能 开发框架 数据可视化
谷歌推出新一代AI开发框架Genkit: Go 入门指南:用 Go 轻松构建 AI 应用
Genkit 是 Google Firebase 推出的开源 AI 应用框架,支持 Go、JS、Python。Genkit Go 为纯 Go 实现,统一接入 Gemini/OpenAI/Vertex AI,内置可视化调试、类型安全结构化生成,专为生产环境设计,5 分钟即可启动首个 AI 应用。
566 3
|
8月前
|
算法 Java 定位技术
迷宫问题
迷宫问题是指在给定区域内寻找从起点到终点的可行路径。可以使用回溯算法解决,通过不断尝试四个方向(上下左右)移动,若无法前进则回退,直到找到终点或遍历所有可能路径。文中还给出了C语言、Java和Python的实现代码,并展示了运行结果。
328 0
|
4月前
|
IDE 开发工具 iOS开发
JetBrains Rider 2025.3 (macOS, Linux, Windows) - 快速且强大的跨平台 .NET IDE
JetBrains Rider 2025.3 (macOS, Linux, Windows) - 快速且强大的跨平台 .NET IDE
189 8
|
存储 算法 C++
【c++丨STL】map/multimap的使用
本文详细介绍了STL关联式容器中的`map`和`multimap`的使用方法。`map`基于红黑树实现,内部元素按键自动升序排列,存储键值对,支持通过键访问或修改值;而`multimap`允许存在重复键。文章从构造函数、迭代器、容量接口、元素访问接口、增删操作到其他操作接口全面解析了`map`的功能,并通过实例演示了如何用`map`统计字符串数组中各元素的出现次数。最后对比了`map`与`set`的区别,强调了`map`在处理键值关系时的优势。
710 73
|
XML Android开发 数据格式
🌐Android国际化与本地化全攻略!让你的App走遍全球无障碍!🌍
在全球化背景下,实现Android应用的国际化与本地化至关重要。本文以一款旅游指南App为例,详细介绍如何通过资源文件拆分与命名、适配布局与方向、处理日期时间及货币格式、考虑文化习俗等步骤,完成多语言支持和本地化调整。通过邀请用户测试并收集反馈,确保应用能无缝融入不同市场,提升用户体验与满意度。
708 3