目录
报错No archetype found in remote catalog. Defaulting to internal catalog
声明
本文是笔者观看黑马课程做的笔记
maven
问题记录
报错No archetype found in remote catalog. Defaulting to internal catalog
意思是在远程目录中找不到原型,默认为内部目录
解决方案 在VMOPTION 添加 -DarchetypeCatalog=local
仓库分类
安装maven和配置环境变量
conf目录下的配置文件修改mirror标签配置私服来加速下载。修改repository标签来配置本地仓库
配置环境变量
idea配置全局环境变量。settings 下面的Maven 路径,jdk版本,runner,compiler
MAVEN_HOME 下面配置安装路径和path下配置bin
idea创建项目
new module,设置坐标。ArcheType选择quickstart.
坐标
坐标是maven中资源的唯一标识。是资源唯一的定位符。
坐标组成
groupid 一般是域名反写
artifactid 通常是模块名称
version 版本号
依赖配置
依赖:指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。
配置方式
可以引入多个依赖
在<dependencies></dependencies>里引入
<dependency>
groupId
artifactId
version
<denpendency>
https://mvnrepository.com/可以找坐标的依赖信息
依赖传递
依赖具有传递性。
直接依赖:在当前项目中通过依赖配置建立的关系
间接依赖:被依赖的资源如果依赖其他资源,则当前项目自动依赖其他资源
排除依赖
:主动断开依赖的资源<exclusion></exclusion>标签
依赖范围
<scope></scope>标签设置范围。
compole(默认)主程序(main)范围,测试程序(test包),打包(Package指令范围内)范围
test则只在测试程序范围,典型的junit
provided主程序和测试程序范围内,典型如servlet-api
runtime在测试程序和打包范围内,典型的如jdbc驱动程序
生命周期
Maven的生命周期是对项目构建过程的抽象和统一
三套独立的生命周期
每套生命周期都包含一些阶段,阶段是有顺序的·,后面的·阶段依赖于前面·的阶段
clean
default
site
生命周期阶段
注意同一套生命才有运行到后面阶段前面阶段都会运行。分清楚它们是否是同一套生命周期