一、Ant
1、Ant和Maven都是项目构建工具
比如:eclipse中new java project创建Java工程,就是使用的ant。
后来,多使用new maven project创建,使用maven工具
2、在项目的运行编辑打包等过程都需要依赖于ant构建工具
二、分布式
1、传统项目部署
1.1、新建一个项目,同步不同的包区分不同的模块
比如一个项目中有用户管理模块,订单模块等等
1.2、把这要给项目发布到tomcat服务器中
2、分布式项目部署(适用于高负载情况下)
2.1、把一个完整的项目拆分成多个项目,把拆分后的项目分别部署到对应的服务器(如tomcat)中,就叫做分布式项目部署。
三、maven中央仓库
jar包坐标,每一个jar文件都有一个唯一坐标
坐标组成:group id:公司名,公司网址倒写
artifact id:项目名
version :版本号
四、创建maven项目时,packaging指的是项目打包成什么?
jar:Java项目
war:web项目
pom:project object model 项目对象模型。把project当作对象看待,通过maven构建工具可以让对象(项目)和对象之间产生关系。
pom:逻辑父项目。只要当前项目有子项目,那它必须是pom类型?(pom类型项目是父项目?)
五、maven项目的目录结构
src/main/resources 快捷目录,存放配置文件、静态资源js文件等、ftl文件
虽然看见resources但是里面所有配置文件最终会被编辑放入到classes类路径。
将项目打包存放到本地仓库之后,可以看到classes类路径:下面存放的是Java类、静态资源js和ftl等等、配置文件。
重点:
虽然maven项目开发时视图有
src/main/java 和 src/main/resources的区分,这大概只是为了方便用户的开发,比如:java文件放到src/main/java中,配置文件和静态资源放到src/main/resources中。
但是打包存储到本地仓库之后,它们都将放到根目录的WEB-INF包下,的classes类路径下。
六、pom.xml 这是maven的配置文件
当前项目所依赖的其他项目或jar或插件等
maven项目之间的关系
1、依赖关系。标签<dependency>把另一个项目的jar引入到当前项目,包括其所依赖的其他项目
2、继承关系。如果一个大项目下,建了多个小项目,那么一般都建一个父项目,即使(假设)父项目什么也不做(父项目的存在,表明继承他的所有子项目属于同一个项目)
类似与java的继承,父项目中有的,子项目也会继承拥有。
父项目的packaging只能是pom。
3、聚合关系。右键父项目,选择新建maven module项目,那么新建的子项目会在本子项目中显示项目名称(作用就是可以在父项目中看到有多少个子项目)
七、
网友评论