推荐文本编辑器:Typora 下载地址
文件后缀名:xxx.md
1.1 标题//#space标题1.2 字体
//-space 无序列表 //1.space 有序列表 //**加粗** //~~删除的样子~~ //*斜体*1.3 引用
//>space 大于号空格1.4 图片
//![]() 1.5 超链接
//[]() [名字]+(网址)1.6右键插入,表格+分割线+代码块 Maven 一、基础介绍 1.1 常用功能
- Maven可以管理jar包
- 自动下载jar包和他的文档,源代码
- 管理jar直接的依赖,比如a.jar需要b.jar,Maven会自动下载b.jar
- 管理你需要的jar包版本
构建,是面向过程的,完成项目代码的编译,测试,运行,打包,部署等
Maven支持的构建有:
- 清理:把之前项目编译的东西删除掉,为新的编译代码做准备
- 编译:把java文件编译为class文件,maven可以同时把成百上千文件编译为class
- 测试:maven可以同时执行多个测试代码,同时测试很多功能,可以批量操作
- 报告:生成测试结果的文件
- 打包:把整个项目放到一个压缩文件中,java程序压缩文件是jar扩展名的,web应用,压缩文件扩展名是war
- 安装:把jar,war文件安装到本地仓库
- pom.xml:Maven把一个项目当做一个模型使用,控制Maven构建项目的过程,管理jar依赖
- 约定的的目录结构:maven项目的目录和文件的位置都是规定好的
- 坐标:是一个唯一的字符串,用来表示资源的
- 依赖管理:管理项目中可以使用jar文件的
- 仓库管理:资源存放的位置
- 生命周期:maven构建项目的过程,就是生命周期
- 插件和目标:执行maven构建的时候用的工具是插件
每一个maven项目在磁盘中都是一个文件夹,比如项目名Hello的文件夹
Hello/
----/src ----------/main #放的主程序java代码和配置文件 ----------------------/java #主程序java文件 ---------------------/resources #主程序中要使用的配置文件 ----------/test #放测试程序代码和文件的 ----------------------/java #测试程序代码的 ---------------------/resources #测试使用的配置文件 -----/pom.xml #maven的核心文件1.5 仓库 1.5.1 仓库的概念
仓库是存放东西的,存放maven使用的jar和我们项目使用的jar
1.5.2 仓库的分类可分为本地仓库和远程仓库
本地仓库就是你的个人计算机上的文件夹,存放各种jar
远程仓库是在互联网上,使用网络才能使用的仓库。又分为中央仓库,镜像仓库,私服
-
中央仓库:最权威的,所有开发人员都共享使用的一个集中的仓库
https://repo.maven.apache.org 中央仓库的地址
-
中央仓库的镜像:就是中央仓库的备份,在全世界重要的城市都有镜像
-
私服:在公司内部使用的
maven仓库的使用不需要人为参与
开发人员需要使用mysql驱动—>maven首先查本地仓库—>私服,没有就—>镜像,还没有就—>中央仓库
1.6 pom文件 1.6.1 基本信息| 基本信息 | |
|---|---|
| modelVersion | 只能是4.0.0 |
| groupId | 组织id.一般是公司域名的倒写,如com.baidu,也可以域名倒写+项目名,如com.baidu.appolo |
| artifactID | 项目名称,对应groupId中项目中的子项目 |
| version | 项目的版本号,自定义,例如1.1.0,如果后面有-SNAPSHOT,代表不稳定版本 |
| packaging | 项目打包的类型,默认jar |
| 依赖:dependencies和dependency | 管理jar包 |
| 配置属性:properties | |
| 构建:build | maven在项目构建时,配置信息,例如设置编译插件的jdk版本 |
唯一值,在互联网中唯一标识一个项目的
公司域名的倒写
自定义项目名称
自定义版本号
https://mvnrepository.com/ 搜索使用的中央仓库。使用groupId或者artifactId作为搜索条件
1.6.3 依赖1.7 生命周期commons-io commons-io 2.11.0 commons-io commons-io 2.11.0 commons-io commons-io 2.11.0
Maven把编译,测试,打包,部署等对应成一个个的生命周期阶段,并对每个阶段提供相应的命令
这些命令真正执行的是由Maven的插件完成,也就是那些jar文件
1.8 junit单元测试junit是一个专门测试的框架,他测试的是类中的方法,每一个方法都是独立测试的
Maven借助单元测试,批量的测试类中的大量方法是否符合预期的
-
加入依赖
junit junit 4.12 test -
在Maven项目中的src/test/java目录下,创建测试程序
测试类的名称 是Test+你要测试的类名
测试的方法名称 是Test+方法名称
-
你要测试HelloMaven
先创建测试类TestHelloMaven
@Test
public void testAdd(){
测试HelloMaven的add方法是否正确
} //其中testAdd叫做测试方法,它的定义规则,方法是public,方法没有返回值,要加@Test
1.9 常用命令
mvn clean 清理 删除target文件夹
mvn compile 编译主程序 只编译src/main/java下的java文件为class文件,同时把class拷贝到target/classes目录下面,把src/main/resources目录下的所有文件,都拷贝到target/classes目录下
mvn test-compile 编译测试程序
mvn test 测试[可以直接执行这个] 执行这一步,前面的都会自动执行
mvn package 打包主程序 只打包src/main/所有文件 默认jar
mvn install 安装主程序 会把本工程打包,并且安装本工程的坐标保存到本地仓库中
执行以上命令,要cmd进入pom.xml所在目录
1.10 插件配置官网插件地址:http://maven.apache.org/plugins/
1.11 依赖范围org.apache.maven.plugins maven-compiler-plugin 插件名字3.8.1 插件版本1.8 告诉maven,jdk是1.8上编译的1.8 target说明我们的程序要在jdk 1.8上运行
使用scope表示依赖使用的范围,比如在编译时有效还是在打包时有效。
值有compile所有阶段都要用,默认就是compile,test只在测试有用,provided,指在编译测试需要jar包,打包安装就不需要这个jar包了
1.12 常用属性(properties)1.13 全局变量UTF-8 1.8 1.8
自定义属性
- 在通过自定义标签声明变量(标签名就是变量名)
- 在pom.xml文件中的其他位置,使用${标签名}使用变量的值
自定义全局变量,一般是定义依赖的版本号,当你的项目中要使用多个相同的版本号,先使用全局变量定义,再使用${标签名}
二、Maven安装 2.1 maven的安装- 下载zip安装包
- 解压到D盘下maven文件夹
- 配置环境变量 M2_HOME
- path中加入%M2_HOME%bin
- cmd mvn -v查看版本信息,是否安装成功
- 修改配置文件,maven安装目录/conf/settings.xml
- 修改指定你的目录 xml文件 53行
- 这一行代码,拷贝到55行,注意要粘贴在注释外面
D:/maven/repository
2.3 下载repository本地仓库D:/maven/repository 文件夹,百度网盘repository.zip下载进去,解压缩
三、在IDEA中的应用 3.1 IDEA设置Maven第一步
FIle–Settings–Build Execution Deployment–第一个Build Tools–选中Maven–设置以下三个
Maven Home directory:Maven的安装目录 D:/maven/apache-maven-3.6.3 User Settings File:Maven安装目录conf/setting.xml配置文件 D:mavenapache-maven-3.6.3confsettings.xml Local Repository:本机仓库的目录 由上一个默认解析处理
在左侧Maven runner 里,设置JRE,1.8开头那个,,vm options设置为 -DarchetypeCatalog=internal
第二步
FIle–New Projects Settings–Settings for New Projects
Build Execution Deployment–第一个Build Tools–选中Maven–设置以下三个
Maven Home directory:Maven的安装目录 D:/maven/apache-maven-3.6.3 User Settings File:Maven安装目录conf/setting.xml配置文件 D:mavenapache-maven-3.6.3confsettings.xml Local Repository:本机仓库的目录 由上一个默认解析处理
在左侧Maven runner 里,设置JRE,1.8开头那个,,vm options设置为 -DarchetypeCatalog=internal
3.2 创建javase项目新建project,选择Empty Project,建完之后,选择左侧modules,点击+号,new module,左侧有Maven,勾上create from archetype 意思是选择模板,找到maven-archetype-quickstart,即可
完成后,对着main 右键new directory,resources,,对着test 右键new directory,resources
3.3 创建Web项目File–New–Module,左侧选择Maven,勾上create from archetype,找到maven-archetype-webapp,即可
完成后,对着main 右键new directory,resources和java
对着src 右键new directory,test,对着test 右键new directory,resources和java
如果写Servlet,在pom.xml,加入依赖,碰到报红,点右侧maven,刷新,如果是没有的jar包,idea会自动下载
javax.servlet
javax.servlet-api
3.1.0
provided
javax.servlet.jsp
jsp-api
2.2
provided
如果没有new Servlet https://www.cnblogs.com/ifeil/p/9378921.html
对着src/main/java new Servlet 名字为HelloServlet 然后看web.xml加入映射
HelloServlet /hello
配置Tomcat 点击idea上分,edit configurations 点击加号,找到tomcat server,点击local,浏览器那个勾去掉,不启动浏览器,找到Deployment,点击加号,Arifact。xploded那个 点击OK,启动tomcat
3.4 IDEA导入Maven项目File–Project Structure–左侧是module,点击+号,import Module,选择要导入的文件夹,然后选择import module from external model,选择maven,,然后在Dependencies 设置jdk,点击Apply,点击OK
Git 一、下载安装- npm.taobao.org/mirrors/git-for-windows/
- 拉到最下面,v2.33.0.windows.1/ 找到Git-2.33.0-64-bit.exe 网盘也可下
- 安装路径D:Git
- 选择notepad++作为默认,其他全部默认下一步
- 设置邮箱 git config --global user.email “549853882@qq.com”
- 设置用户名 git config --global user.name “Hebe”
- 查看C:UsersHebe.gitconfig 文件有没有邮箱用户名
- 环境变量不用配
| 说明 | |
|---|---|
| D:Gitetcgitconfig | 系统级配置 |
| C:UsersHebe.gitconfig | 当前用户登陆的配置,存放邮箱用户名 |
| Git Bash | Linux风格的命令行,使用最多 |
| Git CMD | Windows风格的命令行 |
| Git GUI | 图形界面GUI,不建议初学者学 |
Git本地有三个工作区域,工作目录、暂存区、资源库,如果算上远程仓库就是四个工作区域
Workspace:工作区,就是你平时存放项目代码的地方 add
Index/Stage:暂存区,用于临时存放你的改动,事实上他只是一个文件,保存即将提交到文件列表信息 commit
Repository:仓库区,本地仓库,就是安全存放数据的位置,这里面有你提交到所有版本的数据,其中head指向·· 最新放入仓库的版本 push
Remote:远程仓库:托管代码的服务器,可以简单的认为是项目组中的一台电脑用于远程数据交换
2.2 文件4状态(了解)版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。
- Untracked:未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制.通过git add状态变为Staged
- Unmodify:文件已经入库,未修改.即版本库中的文件快照内容与文件夹中完全一致.这种类型的文件有两种去处,如果它被修改,而变为Modified,如果使用git rm移出版本库,则成为Untracked文件
- Modified:文件已修改,仅仅是修改,并没有进行其他的操作.这个文件也有两个去处,通过git add可进入暂存Staged状态,使用git checkout则丢弃修改过,返回到Unmodify状态,这个git checkout即从库中取出文件,覆盖当前修改!
- Staged:暂存状态.执行git commit则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件为Unmodify状态.执行git reset HEAD filename取消暂存.文件状态为Modified
上面说文件有4种状态,通过如下命令可以查看到文件的状态:
#查看指定文件状态 git status [filename] #查看所有文件状态 git status git add . #添加所有文件到暂存区 空格+点 git commit -m "一般写修改了哪些代码" #提交暂存区的内容到本地仓库 -m 提交信息2.4 忽略文件
有时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件
在主目录下建立“.gitignore"文件
*.txt #忽略所有txt结尾的文件 !lib.txt #但lib.txt除外 /temp #往上忽略,忽略根目录下的temp build/ #忽略build/目录下的所有文件三、项目搭建 3.1 本地仓库搭建
- 新建文件夹 gitcode
- 在里面右键,选择git bash,输入git init
- 执行后可以看到,文件夹目录多了.git文件夹,所有信息都在里面
git clone https://gitee.com/kuangstudy/kuang_livenote.git
四、码云Gitee去绑定SSH- 先登陆账号
- 设置本机绑定SSH公钥,实现免密码登陆,找到码云,设置,左侧找到SSH公钥
- 找到C:UsersHebe下,.ssh文件夹,没有就创建一个文件夹
- 在.ssh文件夹内,右键 git bash here 输入 ssh-keygen -t rsa
- 一路回车下去,会生成2个文件
- 把id_rsa.pub里面的内容,复制到码云网站的SSH公钥里面。标题默认,然后就好了
- 用SSH克隆,把克隆下来的项目,直接复制粘贴到IDEA Project所在的文件下即可
- terminal 控制台 输入git add .
- IDEA右上方有个绿色的勾,就是commit,把右侧全部不要勾,在message写修改了哪些代码,点击commit
- terminal 控制台 输入git push,可以看到码云多了好多文件
如果有文件被修改了,对着文件,右键git add



