开发笔记
推荐链接
Maven
安装maven
新建系统变量MAVEN_HOME,变量值为安装目录bin目录的上一级目录;
编辑系统变量Path,添加变量值%MAVEN_HOME%\bin
cmd命令窗口 mvn -v 显示版本号则安装成功。(必须要重启电脑)
修改maven配置文件
进入D:\wamp64\Java\maven\apache-maven-3.9.6\conf找到配置文件settings.xml如果不修改本地地址,那么默认会存储在 C:\Users\mi.m2 这个下面
配置私服,因为中央仓库在国外导致下载jar包很慢或者失败,所以改为国内的服务器。第一个镜像(maven-default-http-blocker)的目的是阻止所有外部的HTTP仓库请求。它的配置是为了安全考虑,在初始阶段将使用HTTP的外部仓库请求重定向到一个伪造的URL(http://0.0.0.0/)。通过将这些请求重定向到一个无效的地址,可以防止意外地从不可信的外部源下载依赖项或插件,以增加构建过程的安全性。
javascript
//阿里
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
//网易
<mirror>
<id>nexus-163</id>
<mirrorOf>*</mirrorOf>
<name>Nexus 163</name>
<url>http://mirrors.163.com/maven/repository/maven-public/</url>
</mirror>
//腾讯
<mirror>
<id>nexus-tencentyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus tencentyun</name>
<url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url>
</mirror>
配置jdk
javascript
<!-- jdk21版本 -->
<profile>
<id>jdk-21</id>
<activation>
<jdk>21</jdk>
</activation>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<maven.compiler.compilerVersion>21</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
配置完成。win+r 运行cmd,输入mvn help:system测试,Maven会自动下载缺省的或者更新的各种配置文件和依赖到本地仓库中,如果出现 绿色字体BUILD SUCCESS,说明下载成功,最后检查下载自定义的仓库文件夹maven_repository看里面是否已经有文件配置了,如果存在则说明你的maven已经配置成功了。
IDEA中使用maven
设置里面配置maven对应的路径
特别注意:上述这种改变方式,Maven home的路径经常就被重置了,每次下载完项目了,以前都配置好了maven的配置,但是再下载新maven的项目的时候,就会自动默认成了c盘的引用了,所以推荐使用全局配置关闭所有项目,进入IDEA的最初始界面,然后配置全局(如果配置了还不起作用可以重启电脑试试)
生命周期和插件
javascript
/**
插件与生命周期内的阶段绑定,执行到对应的生命周期就会执行对应的插件功能
*/
//对项目进行清理,清理的过程中会删除target目录下编译的内容。
clean
//验证工程是否正确,所有需要的资源是否可用
validate
//编译项目源代码
compile
//对项目的运行测试
test
//可以打包后的文件存放到项目的 target 目录下,打包好的文件通常都是编译后生成的class文件。
package
//运行任何检查,验证包是否有效且达到质量标准
verify
/**
在本地仓库生成仓库的安装包可以供其他项目引用,同时打包后的文件存放到项目的 target 目录下。
对项目打包有三种打包方式,pom打包,jar包和war包。打包方式在pom.xml文件中进行指定。
pom工程一般是聚合工程,代表父工程,负责管理jar包的版本、maven插件的版本等,主要做统一的依赖管理。
jar包就是普通的打包方式,可以是pom工程的子工程。
war包的都是web工程,是可以直接放到tomcat下运行的工程。
*/
install
//产生site,生成报告或者文档
site
//发布到远程仓库
deploy