首先让我们来创建一个Maven项目。如何创建?请参考
孑辞:STEP4.2 认识pom.xmlzhuanlan.zhihu.com现在我们有了如下项目结构:
假定我们现在作为程序员,老板提了这样一个需求:
打印现在的时间(精确到秒)。
没错,需求就是这么简单。
但是老板说了,他最近新设计了一个包叫做joda-time,已经发布到了Maven中央仓库中。他很得意,要求我们一定要用在我们的项目里。(这我瞎编的,真丶joda作者别打我)
等等……什么是Maven中央仓库?
我们来梳理一个简单的逻辑。我们需要的第三方包(依赖)是在pom.xml里配置的,那么Maven是怎么把我们需要的第三方包导入进来的呢?
真实情况是,我们本地也会有一个Maven仓库,里面放着各种我们曾经导入过的包。当我们在pom.xml里配置我们需要的包时,maven会先从本地仓库里试着取出来放到项目里,那么我们就可以用了。
那如果本地没有呢?
那就要从网上找了。怎么从网上找?也就是去Maven中央仓库找。
那Maven中央仓库的地址在哪里?这个无需在意。其实是有默认地址的,但是当你以后maven用多了,也许你会愿意给它换个地址。当然,这是后话了。
好了,回到我们的需求上。
梳理一下,就是我们现在要实现打印时间的需求,并且一定要用jada-time包。
那我们就使用joda-time包来写一下我们的代码:
在我们的src文件夹里新建一个HelloWorld.java
import
如果你跟着我写下这段代码,你会发现:import org.joda.time.LocalTime 报红了
这是因为我们没有引入相关依赖,却试图直接使用。
那么接下来我们加入依赖:
打开我们的pom.xml,加入以下配置:
<!--声明依赖-->
整个pom.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
pom.xml文件修改好后,稍微等一会(maven会从中央仓库里抓过来导入)我们就可以看到,HelloWorld里不再报红了:
运行一下,看到如下结果:
The current local time is: 01:55:03.947
只是你的时间可能和我不一样哈哈哈
那么到这里,我们的项目就可以交付了!
老板: “干的不错”
最后简单梳理一下我们做了些什么:
我们有一个引入第三方包(joda-time)的需要,所以在pom文件里开了一个<dependencies>标签,在里面加了一个<dependency>来引入依赖。
事实上在我们小的实际开发中,和maven打的最多的交道,也就是添加我们的依赖了!
什么?你说maven提供的那么多强大的命令还没有用到?
那我们再来做一个小小的实践吧!
孑辞:实践IDEA提供的Maven Windowszhuanlan.zhihu.com