项目开发生命周期

一。编程生命周期
1。编码
1.1 依赖jar包问题
1.2 代码版本问题 代码更新问题
XXXXXXXXX
1.3 单元测试
2。编译
javac编译
eclipse编译(直接自动编译 整个项目的源代码)

3。项目(project)
源代码聚合在一起 相同的功能在同一个项目
simple project(简易项目)
JAVA PROJECT
WEB PROJECT

4。发布部署
JAVA PROJECT
打包:jar
java -jar jar包运行
WEB PROJECT
打包:war
tomcat中运行

5.集成测试
6.运维

二。maven(编程生命周期管理工具)
学习文档 :
http://maven.apache.org/users/index.html#
中文文档:
https://book.huihoo.com/maven-the-definitive-guide/index.html
教程:
http://www.runoob.com/maven/maven-tutorial.html

三。maven特点
maven使用项目对象模型(POM Project Object Model)管理项目
约定优于配置 约定好目标项目的格式 源代码位置 配置文件位置
–src
----main
--------java
--------resources
–pom.xml

四。maven安装
1下载apache-maven-3.53 https://archive.apache.org/dist/maven/maven-3/
2 解压 将bin目录添加到环境变量 PATH中
3 解压镜像包(1G)
找到maven安装目录/conf/setting.xml 添加
E:\升华课程\linux\maven\repo

四。maven常用命令
1 创建项目
mvn archetype:generate
1271 java项目
1275 web项目
项目标识
开发公司:groupid 域名.公司名 cn.ps
项目名称 artifictid
版本号

2 编译
进入 pom.xml同级的目录
mvn compile

3 打包
进入pom.xml同级的目录
mvn package
jar包
war包
使用tomcat6运行 注意只支持javaee5
mvn -Dmaven.tomcat.port=8081 tomcat:run
使用tomcat7运行 支持javaee6
mvn -Dmaven.tomcat.port=8081 org.apache.tomcat.maven:tomcat7-maven-plugin:run
4 其他maven命令
mvn install 安装到maven仓库中
mvn deploy 发布到远程仓库中
mvn eclipse:eclipse 生成eclipse的

五。 运行
jar包 java -cp jar包名 带有main方法的类
war成 mvn tomcat:run
mvn jetty:run 不支持
mvn org.mortbay.jetty:jetty-maven-plugin:run

六 项目的坐标
cn.ps 公司名称
MAVEN_WEB 项目名称
0.0.1-SNAPSHOT 版本号
war 打包的类型

关于版本号
..-
主版本一次+1 发生重大更新
次版本一次+1 发生了模块变化 新增小功能 减少了某些功能
增量版本 发生了修复简单bug
限定版本 SNAPSHOT(开发中)|LATEST(引用最近版本)|RELEASE(发布)

七 maven仓库

》》超级pom执行命令:mvn help:effective-pom

》》私服 (代理)
maven中央仓库 https://repo.maven.apache.org/maven2
阿里巴巴私服 http://maven.aliyun.com/mvn/view
著名私服列表 https://mvnrepository.com/repos
》》搜索jar的maven坐标
http://maven.aliyun.com/mvn/search
https://mvnrepository.com/ 推荐
https://oss.sonatype.org/#welcome 发布jar包到中央仓库

八 关于maven依赖需要解决问题
1 多项目的版本冲突问题
同一个项目中pom的版本冲突

6.0.2


mysql
mysql-connector-java
M Y S Q L − V E R I O N &lt; / v e r s i o n &gt; &lt; / d e p e n d e n c y &gt; 跨 项 目 解 决 版 本 冲 突 问 题 》 》 继 承 ( 不 推 荐 ) 继 承 了 父 p o m 的 依 赖 &lt; p a r e n t &gt; &lt; g r o u p I d &gt; c n . p k &lt; / g r o u p I d &gt; &lt; a r t i f a c t I d &gt; M A V E N P A R E N T &lt; / a r t i f a c t I d &gt; &lt; v e r s i o n &gt; 0.0.1 − S N A P S H O T &lt; / v e r s i o n &gt; &lt; / p a r e n t &gt; 父 p o m 定 义 &lt; p r o p e r t i e s &gt; &lt; M Y S Q L V E R S I O N &gt; 6.0.3 &lt; / M Y S Q L V E R S I O N &gt; &lt; / p r o p e r t i e s &gt; 子 项 目 中 引 入 依 赖 &lt; d e p e n d e n c y &gt; &lt; g r o u p I d &gt; m y s q l &lt; / g r o u p I d &gt; &lt; a r t i f a c t I d &gt; m y s q l − c o n n e c t o r − j a v a &lt; / a r t i f a c t I d &gt; &lt; v e r s i o n &gt; {MYSQL-VERION}&lt;/version&gt; &lt;/dependency&gt; 跨项目解决版本冲突问题 》》继承(不推荐)继承了父pom的依赖 &lt;parent&gt; &lt;groupId&gt;cn.pk&lt;/groupId&gt; &lt;artifactId&gt;MAVEN_PARENT&lt;/artifactId&gt; &lt;version&gt;0.0.1-SNAPSHOT&lt;/version&gt; &lt;/parent&gt; 父pom定义 &lt;properties&gt; &lt;MYSQL_VERSION&gt;6.0.3&lt;/MYSQL_VERSION&gt; &lt;/properties&gt; 子项目中引入依赖 &lt;dependency&gt; &lt;groupId&gt;mysql&lt;/groupId&gt; &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt; &lt;version&gt; MYSQLVERION</version></dependency>pom<parent><groupId>cn.pk</groupId><artifactId>MAVENPARENT</artifactId><version>0.0.1SNAPSHOT</version></parent>pom<properties><MYSQLVERSION>6.0.3</MYSQLVERSION></properties><dependency><groupId>mysql</groupId><artifactId>mysqlconnectorjava</artifactId><version>{MYSQL_VERSION}

一旦在父pom中修改了变量名 所有的子pom都需要修改

》》依赖管理 多继承 (不能继承变量和父pom的依赖) 管理版本号
父pom中定义所有的依赖的版本 不会下载jar包



javax.servlet
jstl
${JSTL_VERSION}


子pom需要继承 同时不再需要带版本号

javax.servlet jstl

2 代码量大(拆分 多模块项目)

项目划分为多模块

alt+shift+v

注意模块项目
编译过程 直接从项目中找
mvn 运行过程 直接从仓库中找
mvn install 自己仓库
mvn deploy 中央仓库

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值