发表于: 2018-04-06 09:45:41
1 698
Nineteenth Day
今日任务:
Maven 学习,如果顺利,再学习一点Spring的知识
1. Maven - Archetype
2. idea + maven
3. 简单的账户注册服务
学习轨迹:
模块 一 Archetype 和 IDEA + Maven
1. Archetype 生成项目骨架
昨天在练习的时候也看到了,需要按照 Maven 的规定,经src/main/java src/test/java 等目录建立好,以及pom文件写好,通过这些练习可以更好的理解maven的配置情况。
但是,同样的事情做多了,总会觉得厌烦,而且没有质量可言,so maven 提供了Archetype 可以帮助开发者,快速构建项目结构。
下面创建 Archetype 项目
运行:mvn archetype:generate
开始运行的时候,可能会等待一段时间,之后,会有打断的信息输出,同时会等待输入,这里我默认输入,有选择 archetype 的版本,后面的是填写groupId artifactId 以及 version,最后是 package 名字。
输入完信息之后,是确认信息,然后创建成功。
这个结构和昨天手动创建的结构一样。
关于 mvn archetype:generate ,有些地方使用
mvn org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-5:generate
我们的 mvn archetype:generate 命令实际上是在运行插件 maven-archetype-plugin .
上面长命令是指定了该插件的版本,而短命令则会自动去下载解析最新的稳定版本。
org.apache.maven.plugins --- groupId
maven-archetype-plugin --- artifactId
2.0-alpha-5 --- 该插件的最新稳定版本。
后续: 通过 Archetype 可以快速创建项目骨架,如果在实际开发中可以自定义Archetype将会更大的提高开发效率
执行编译任务,没问题了。
mvn clean test
2. 通过 IDEA 创建 maven 项目
第一步: 选择 maven以及创建方式
这里的这几个项目就很清晰了: 左侧是maven 项目,右侧上面是通过 Archetype 创建 项目,右侧中间是选择模板
第二步: 填写项目的坐标(groupId ArtifactId 以及 Version)
第三步: 选择 maven 版本,maven仓库以及信息的确认
第四步:选择项目路径,Finish 确认,等待一会儿。这时候也就知道,当项目没有出来的时候,maven在做什么了,现在相关的依赖包。
到这里,maven 所做的事情都明了了。
运行 maven 命令,IDEA左下角有一个 terminal ,可以直接执行 mvn clean xxx,nice。
模块二: 简单的账户注册服务
account-email 模块
1. mvn archetype:generate 创建简单的maven项目
2. 修改POM文件,添加依赖(这里用到了 springframework)
在 dependencies 元素下面添加依赖,默认生成的已经有了 JUnit 依赖
昨天没有细看依赖,其实依赖也是和创建一个maven项目一样的,都是通过 groupId 、artifactId和version作为坐标来锁定一个maven库中的jar包的,scope是指当前的jar包只在test下起作用,main下不起作用。
引入 maven 库的过程:以spring-core为例
1. 在 POM.xml 文件中 <dependencies> 下添加 <dependency></dependency> 标签
2. 到 maven 仓库中搜索 spring-core,并找到 Maven配置文件
3. 将配置文件添加到 POM 文件中即可
注意第一次添加的时候,因为本地仓库没有,会报找不到的错误,执行mvn clean compile 即可
重新加载之后就好了
按照上面的方式添加需要依赖的库之后POM文件如下
不得不说 maven 真的是太好用了,这些依赖只要通过POM文件就完全引入,而且与 Java 代码完全解耦,非常 NICE
再看依赖库结构:
依赖库以 <dependency> </dependency> 包含
由 groupId 、 artifactId和version构成了依赖坐标
通过引用可以得出,任何一个Maven项目都必须有这个坐标,只有这样才能被其他的项目所依赖。
总结:
今天熟悉了下 Maven 的使用,同时使用了依赖。
明日计划:
继续这个登录系统
评论