maven
- 1.Maven简介:
- 2.jar包在maven本地仓库中是按照什么结构存放的?
- 3.maven软件的目录结构
- 4.maven仓库的种类
- 5.JavaScript.then()这个方法是什么意思?
- 6.打包完maven目录是啥样的???
- 7.jar包和war包的区别
- 8.maven常见的命令:
- 9.maven有三个独立的生命周期。
- 10.为什么分clean生命周期???
- 11.命名规范:
- 12.maven依赖网址:
- 13.maven编码提示:基于一个索引(配置文件仓库)。
- 14.构建maven仓库索引:
- 15.gradle是什么???
- 16.创建maven项目的时候GroupId和ArtifactId以及Version是什么意思?
- 17.设置文件作为各类的根目录。
- 18.Maven的6种依赖范围:
- 19.用啥工具类开启的资源,关闭时也要用对应的工具类来关闭。
- 20.选中并替换,双引号符号替换为单引号:ctrl+R(replace)。
- 21.war和war exploded的区别:
1.Maven简介:
Maven是一个项目管理工具,它的作用就是管理项目,主要体现在两个方面:依赖管理
和一键构建
。
- 依赖管理: 对jar包的管理方式
- 一键构建: 一个命令就可以完成一个项目构建过程
2.jar包在maven本地仓库中是按照什么结构存放的?
(按照三级目录 公司/项目/版本/*.jar )
com.aibaba.druid/l.1.15/druid-1.1.15.jar
3.maven软件的目录结构
目录结构介绍
4.maven仓库的种类
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
5.JavaScript.then()这个方法是什么意思?
1)then()方法是异步执行。
2)意思是:就是当.then()前的方法执行完后再执行then()内部的程序,这样就避免了,数据没获取到等的问题。
3)语法:promise.then(onCompleted, onRejected);
4)参数
promise必需。Promise 对象。
onCompleted必需。承诺成功完成时要运行的履行处理程序函数。
onRejected可选。承诺被拒绝时要运行的错误处理程序函数。
原文链接:https://blog.csdn.net/mjt1723067421/article/details/99732439
6.打包完maven目录是啥样的???
打完包有lib文件夹嘛,jar包放哪儿?
打完包会生成lib文件夹
7.jar包和war包的区别
javaSE项目 打包==》jar包
javaWeb项目打包==》war包
8.maven常见的命令:
1)clean 清理命令,执行clean会删除target目录及内容,即清理掉上一次项目构建产生的文件
2)compile 编译命令,作用是将 src/main/java 下的文件(正式的java文件)编译为class文件输出到target目录下
3)test 测试命令,作用是执行 src/test/java 下的测试类,并编译为class文件输出到target目录下,并会运行测试类中所有的单元测试的方法
相当于javac+.java
4)package 打包命令,打的是所有的正式代码(src/main) 对于java工程执行package打成jar包,对于web工程打成war包
5)install 安装命令,将打好jar包或者war包安装到本地maven仓库
6)deploy 部署命令,将打好的jar包或war包部署到私服中
9.maven有三个独立的生命周期。
* maven对项目构建过程分为三套相互独立的生命周期,每个生命周期中都包含了不同的命令,这三套生命周期分别是:
Clean Lifecycle (清理 生命周期):在进行真正的构建之前进行一些清理工作。
clean
Default Lifecycle(默认 生命周期):项目构建的核心部分,包括编译,测试,打包,安装,部署。
compile test package install deploy
Site Lifecycle (站点 生命周期):生成项目报告,站点,发布站点。
site
位于同一个生命周期中的命令,运行后面的命令,前面的会自动执行
比如运行test,会先执行compile
总之,2句话概括就是
(1)人工键入命令总是指向某生命周期的某阶段
(2) maven 引擎根据你指向的阶段Pn去跑完 阶段所在的生命周期的(某Life-Cycle) 该阶段之前的 所有阶段(P1+P2+…+Pn-1)。
10.为什么分clean生命周期???
构建项目前,不需要clean嘛,为什么clean还要要单独做一个生命周期,直接构建的生命周期里包含clean多好。
11.命名规范:
artfact:如果是两个单词的话,中间用-隔开。–>maven-demo
除了,类名,方法名,便量和常量名,全是小写字母
中横线和减号是有区别的,要注意。
12.maven依赖网址:
https://mvnrepository.com/ 复制依赖
13.maven编码提示:基于一个索引(配置文件仓库)。
跟代码自动补全一样
14.构建maven仓库索引:
手动构建索引。
15.gradle是什么???
16.创建maven项目的时候GroupId和ArtifactId以及Version是什么意思?
1)GroupId和ArtifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。
GroupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的GroupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,ArtifactId是tomcat。
2)ArtifactId是项目的唯一标识符,在实际开发中一般对应项目的名称,就是项目根目录的名称,例:GradleDemo。
3)Version 是项目的版本号,例:1.0-SNAPSHOT 。其中1.0是版本号,一般来说,版本都是有更新迭代的,高版本的包能够兼容低版本包的所有功能,这一点可以和我们日常使用的APP做个类比。SNAPSHOT版本代表不稳定、尚处于开发中的版本。而衍生的有Release版本则代表稳定的版本
原文链接:https://blog.csdn.net/weixin_45182619/article/details/112432090
17.设置文件作为各类的根目录。
18.Maven的6种依赖范围:
编译–>写代码的时候,会报错。
compile: 编译依赖范围(默认),对于编译、测试、运行三种classpath都有效
test: 测试依赖范围, 只对测试classpath有效。典型范例:Junit
provided: 已提供依赖范围 对于编译和测试classpath有效,但在运行时无效。典型范例:servlet-api(注意:如果没有正确设置该依赖范围,会导致jar包冲突,报错的)
runtime: 运行时依赖范围 对于测试和运行classpath有效,但在对编译主代码时无效。典型范例:JDBC
system: 系统依赖范围
import: (maven2.0.9及以上): 导入依赖范围,它不会对三种实际的classpath产生影响
原文链接:https://blog.csdn.net/sweetyIT/article/details/78068829
19.用啥工具类开启的资源,关闭时也要用对应的工具类来关闭。
20.选中并替换,双引号符号替换为单引号:ctrl+R(replace)。
21.war和war exploded的区别:
总结:热部署用war exploded的方式。
正解:
是选择war还是war exploded 这里首先看一下他们两个的区别:
1–war模式:将WEB工程以包的形式上传到服务器 ;
2–war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器;
(1)war模式这种可以称之为是发布模式,看名字也知道,这是先打成war包,再发布;
(2)war exploded模式是直接把文件夹、jsp页面 、classes等等移到Tomcat 部署文件夹里面,进行加载部署。因此这种方式支持热部署,一般在开发的时候也是用这种方式。
(3)在平时开发的时候,使用热部署的话,应该对Tomcat进行相应的设置,这样的话修改的jsp界面什么的东西才可以及时的显示出来。
总结:这两种方式得部署方式是不一样的,因此在获取项目的相对路径的时候得到的结果是不一样的。
根路径:
1)war:tomcat\wabapps\root
2)war exploded:项目target的位置。
原文链接:https://blog.csdn.net/xlgen157387/article/details/56498938