不学Maven会死?Maven真香!
这几日一直在研究Java爬虫,经历了入坑又爬坑的感觉,在知乎找Java爬虫框架,找到了一款心仪的框架,而且是国人开发,浏览了文档说明手册,感觉挺好上手,支持正则、jQuery、XPATH选择语法,自己好借鉴以前使用Python Scrapy框架的经验,一顿内心狂喜之后,开始了正式上手Java爬虫的计划,阅读到这里,尴尬的事情出现了。
Maven是个啥?学Java的时候怎么没有听说过?算了,搞吧,自己学习能力这么强应该没啥大问题,就在慕课网里找到了课程刷了起来。
看了一遍,只知道Maven是干什么,怎么用是一点都不懂,在知乎里又搜了Maven,看到有人说Maven是如何如何的了不起,可是自己丝毫没有感到,就知道Maven的入门门槛有点高,一般课程看一遍就能明白是个啥以及大致怎么做了,但是Maven这个课程是前前后后看了好多遍,还要边看边做便理解才能慢慢体会到其中的强大!
Maven可以干什么?如果接触过Python,学习了Maven之后发现它真的很像Pip,把别人造的轮子通过很轻松的方式就可以为你所用,学习Maven之前,各种Jar包都是独立存在的,学过Maven之后各种Jar包都能和你产生关系,只需要喊一声我要使用哪个公司的哪个版本的工具jar包,就可以用了,不用到处找Jar包了,依赖关系也轻松解决,jar包的使用可以精确的控制。
如果还没听懂,那来一个更简单的例子,电脑下载软件需要到各个软件公司的官网上去下载,没有统一的“市场”去管理,导致找个软件可能要费很多波折,苹果手机的App Store统一了苹果手机应用的下载和更新,所有苹果应用都汇总在App Store,所有里面的应用很全面,每个应用但按照规范定义版本号,通过App Store可以管理应用的更新,我们使用的时候可能浑然不知,但是想想如果没有这样的方式,很多简单的需求处理起来会变得复杂的很多,安卓早期也是如此。
Maven既然这么强大,就来小窥一下。
按照上面手册说明的来。在自己的项目(已有项目或者新建一个)中添加以下坐标即可:
<dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-core</artifactId> <version>0.7.3</version> </dependency> <dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-extension</artifactId> <version>0.7.3</version> </dependency>
刚开始的时候鬼知道这什么意思哦,其实就是使用Maven定义的方式管理项目依赖。笔者使用的是IDEA集成开发环境,所有很多步骤省略了,要真正掌握Maven还是需要都明白才行,这里就不知一一讲解了。
粘贴进去,然后神奇的事情就会发生,哈哈哈,不买关子了,框架相关的依赖Jar包自动给我们添加好了。
看到这么多数量的依赖,想想没有Maven的话,一个个去找,得多麻烦,有Maven后只是复制粘贴的事情。真的是工欲善其事必先利其器,好工具可以大大提升工作效率。
前前后后因为爬虫去学了Maven,然后再Maven折腾了至少两天时间,然后又回头研究爬虫,真正在爬虫上花的时候并不多,基本对着手册一顿操作操作就可以了。这次也算收货不小,像是之前折腾git一样,不会的时候觉得没有你难道就不行了,会了之后哈哈哈,这不就是典型的真香定律嘛,哈哈哈哈。现在沉迷GitHub,估计又要沉迷会Maven了,大神造的轮子都在上面随便用呢。
学习这事不能放弃,死磕到底就行了(各位看官放下手中的砖头,具体情况具体来就好~)。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
GitNote 基于 Git 的跨平台笔记软件正式发布
GitNote 基于 Git 的跨平台笔记软件 为什么 自从工作之后,我开始进行笔记记录,这是一个很棒的习惯.我曾经使用过 EDiary Evernote Onenote Wiz 麦库等,都是一些不错的笔记软件,但是都有一些各式各样的问题,不能满足我的使用. 2013 年,我用 java 编写了第一款笔记软件 jnote,支持 markdown 和富文本编辑器,但是没有云同步功能.2016 年,我用 electron 和 JavaScript 编写了一个 markdown 编辑器 ndpeditor,不是笔记软件.2017 年,我用 electron 和 JavaScript 编写了基于 git 的 GitNote 笔记软件,这个采用一个 React开发的版本,这是一个没有发布的版本.2018 年,我用 Vue重构了 GitNote,更强大的 GitNote. git 同步 git 是一个很棒的工具,GitNote 支持 git 的全部特性,并且不依赖本地 Git 环境. 你可以使用任何支持 Git 的仓库. https://github.com/ 免费版支持无限私有仓库https:/...
- 下一篇
Java图形化:Swing表格的使用
利用JTable类直接创建表格 创建表格: 在JTable类中除了默认的构造方法之外,还提供了利用指定表格列名数组和表格数据数组创建表格的构造方法,如下: JTable(Object[][] rowData,Object[] columnNames) rowData就是表格的数据数组 columnNames就是表格的列名数组。 使用表格时,一般将其添加到滚动面板中,然后将滚动面板加到相应的位置。 在JTable中还提供了利用指定表格的列名向量和表格数据向量创造表格的构造方法,如下:JTable(Vector rowData,Vector columnNames) rowDara就是表格的数据向量 columnNames就是表格的列名向量 在使用表格时,有时候不需要使用滚动条,就可以在窗体中显示整个表格,在这种情况下,也可以直接将表格添加到相应的容器中。 注意:如果是将表格添加到相应的容器中,则需要通过JTable类的getTableHeader()方法获得JTableHeader类的对象,然后再将该对象添加到容器的相应位置,否则表格将没有列名。 简单表格案例: package view...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果