Maven的使用和学习初体验-阿里云开发者社区

开发者社区> keep_foolish> 正文

Maven的使用和学习初体验

简介:
+关注继续查看

Maven初体验

因为三年的学习中,随着自己学习Java的深入,也越来越理不清自己的应用的依赖关系。比如起初

因为一个StringUtil而导入的Apachecommens扩展包。

还有玩数据库时导入的MySQL驱动包随后还有oracle的驱动包

然后玩JavaWebTomcat中拿了个servlet的包

然后是我学习最漫长的一段时间中,从springspringMVCmybatis,随后的hibernateStruts2,无数的包就不列出了。

随后又玩大数据和云计算,玩起了hadoophdfsyarnMapReduce,导入的包很多很复杂,不过幸好eclipse的插件帮我完成了这个导入的过程。

玩大数据的过程中做反向索引又去引入的分词包analyze

随后的项目过程中用到将数据导出到外部excel中,用到了ApachePOI

...

 

随着学习的深入,每次构建一个项目都需要去思考依赖关系,而且往往会在做项目的过程中或者调试的过程中因为导入的包不足而报错。

 

其实之前早就浅浅接触过mavenGitHub,但是因为当时自己的项目规模完全还没到需要系统管理的程度,所以暂时搁置在一边。但是随着这些烦恼的升级,我决定捡起maven去解决当前的困扰。

 


本文不对maven的具体知识进行细节展开,既是本人对近期maven学习的总结也是对maven的总体介绍。适合不知道maven是什么但是希望总体了解它的人阅读,不适合作为学习文档。

 

MavenApache旗下的顶级项目之一。主要用于项目的管理,现在许多大项目都采用maven来管理团队的项目。Maven可以解决项目开始时导入依赖的困扰,而且能自动生成项目测试报告等等高效工作。

如果你的项目需要一些外部依赖的jar包只需要在pom中显示导入仓库中中包即可,所以整个项目只需要统一维护一个pom文件即可。

 

pom文件解析:



仓库的概念:maven项目在build的过程中首先会检查项目中pom定义的依赖关系,然后会去仓库中提取需要的依赖,如果没有则从全球中央仓库中下载。

maven的项目目录结构:

src

     main

         java

     test

         java

82309b69db46689182e48f4e53444baa74df8994

mainjava目录用于存放源代码,testjava目录用于存放测试代码。

 

Maven开发的几个重要过程解读:

clean  compile  test   package    install

 

1.compile  

编译这个项目。第一次编译根据XML检查依赖,并构建(build)项目。如果本地仓库和世界仓库都找不到依赖的jar包则报错。依赖解决完毕后会对main中的javatest目录下的.java文件进行编译,然后输出到与src同目录的一个target目录的classes下。

2.test

运行test中编译出的那些测试文件,进行测试后生成测试日志,日志也输出到target下。

3.clean

删除target

4.package

打包这个项目到一个jar包中

 

5.install

将本模块保存到本地仓库中

 

writeBy --------------------------------------------------------------------------------2018-4-11


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
吴恩达《深度学习》第二门课(1)深度学习的实用层面
1.1训练,验证,测试集(Train/Dev/Test sets) (1)深度学习是一个按照下图进行循环的快速迭代的过程,往往需要多次才能为应用程序找到一个称心的神经网络。 (2)在机器学习中,通常将样本分成训练集,验证集和测试集三部分,数据规模相对较小,适合传统的划分比例(如6:2:2),数据集规模比较大的,验证集和测试集要小于数据总量的20%或者10%甚至更低。
1191 0
改善C#程序157个建议——建议37学习笔记:使用Lambda表达式代替方法和匿名方法
改善C#程序157个建议——建议37学习笔记:使用Lambda表达式代替方法和匿名方法
22 0
深度学习资料
Additional Resources Official Resources: TensorFlow Python API TensorFlow on Github TensorFlow Tutorials Udacity Deep Learning Class TensorFlow Playg...
908 0
改善C#程序的157个建议——建议84学习笔记:使用PLINQ
改善C#程序的157个建议——建议84学习笔记:使用PLINQ
26 0
深度学习之激活函数
欢迎关注我们的网站:http://www.tensorflownews.com/,学习更多的机器学习、深度学习的知识! 之前我们介绍了Sigmoid函数能够将输入的数据转换到0和1之间,其实Sigmoid函数本质上是一种常用的激活函数,是神经元最重要的组成部分。
1153 0
Jest 测试框架使用的学习笔记
Jest 测试框架使用的学习笔记
11 0
机器学习之使用sklearn构造决策树模型
机器学习之使用sklearn构造决策树模型一、任务基础导入所需要的库 1234import matplotlib.pyplot as pltimport pandas as pd %matplotlib inline加载sklearn内置数据集 ,查看数据描述 123from sklearn.
714 0
+关注
9
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载