maven实战-----读书笔记之第九章~~第十二章
第九章 Nexus创建私服
1.下载,安装参见第一篇博客,https://www.cnblogs.com/hejj-bk/p/11350348.html
2.maven配置私服,可以在项目中直接配置私服,这种方式只对当前项目有效,如下图所示:
我们都是配置在全局设置中setting.xml文件中,但是setting.xml并不支持repositories和pluginRepositories元素,但是maven为我们提供了Profile机制,能让用户将配置放到Profile中,该配置中使用了一个id为nexus的profile,这个profile包含了相关的仓库配置,同时配置中又使用了activeProfile元素将nexus这个Profile激活,当执行maven构建的时候,激活的Profile会将仓库配置应用到项目中,配置如下图:
但是我们发现这样配置,还会不时的访问中央仓库,我们希望是所有的maven下载都仅仅通过nexus,已全面发挥私服的作用,所以,我们要借助Maven镜像配置,创建一个可以匹配任何仓库的镜像,镜像的地址为私服,这样Maven对任何仓库的构件下载都会转到私服中。配置如下:
3.部署构件到Nexus
日常开发生成的快照版本构件可以直接部署到nexus中策略为Snapshot的宿主仓库中,项目正式发布的构件则应该部署到Nexus策略为Release的宿主仓库中,pom.xml配置如下:
Nexus的仓库对于匿名用户是只读的,为了能够部署构件,还需要在setting.xml中配置认证信息,值得注意的是,上图中配置的两个id应该与下图配置的两个id相同,这样才可以匹配,配置如下:
第十二章 Maven构建web应用
1.构建web项目,注意的是,packaging元素中的值设置为war,代表是web,不设置就是默认打的是jar包,只编译class文件。web项目中有两个构建也需要注意,servlet-api和jsp-servlet这两个jar包一般容器都会自带这两个包,所以我们只是编译的时候需要他,而运行的时候不需要这两个jar包,引入还可能造成jar包冲突,所以范围设置为provider。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具