一、和Eclipse的集成

1、添加Maven

在windows--> preferences中找到maven选项,如下图:

如果没有上图的Name为apache-maven-3.5.2的项,则需要点击右侧的Add按钮进行添加,配置如下:

2、修改配置文件

修改apache-maven-3.5.2安装路径下的settings.xml文件中的localRepository节点,修改为自定义的本地仓库路径,如下:

 <localRepository>D:/Dev/Java/maven-repo/repository</localRepository>

D:/Dev/Java/maven-repo/repository为自定义的本地仓库路径地址

3、eclipse中更新配置文件

在eclipse中windows-->preferences,找到maven,然后如下图所示,找到User settings,修改配置文件为刚才修改的配置文件

修改完成之后,点击Apply按钮后,则和eclipse的集成完成。

二、Maven的使用

1、创建Maven项目

file -> new -> project,然后找到maven,如下图选择,

点击next

点击next

双击maven-archetype-webapp进入下一步,依次输入如下内容

点击finish完成maven项目的创建。

2、Maven的使用

mavendemo项目创建完成的目录结构如下图所示

其中pom.xml主要描述了项目的maven坐标,依赖关系,开发者需要遵循的规则,缺陷管理系统,组织和licenses,以及其他所有的项目相关因素,是项目级别的配置文件。

上图中index.jsp上的红叉是因为缺少servlet-api.jar包导致的,下面通过修改pom.xml文件来添加依赖;

a.双击pom.xml文件打开配置界面

IDE默认添加junit依赖包,点击add按钮后,在下图第一个红框中输入servlet后,下面的search result内列出所有匹配的结果,选中javax.servlet servlet-api这项,修改上图的Scope为provided(如果不修改,之后发布到tomcat时会与tomcat中的servlet-api.jar冲突)

点击Ok确定并保存,可以观察到index.jsp上的错误消失,如下图

同时项目目录结构中的Java Resources -> Libraries ->Maven Dependencies添加了servlet-api-3.0.jar,如下

后面的路径即为jar包在本地仓库的完整路径;

b.根据上图可以看到Libraries下的JRE System Library为J2SE-1.5版本,现在需要将其更新为本地安装的jdk的版本,过程如下:

点击pom.xml配置界面下的pom.xml tab标签,在build标签下添加如下内容:

        <plugins>
<!-- 指定JDK版本和编码 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- 指定Resources文件编码 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>

保存修改;此时Libraries下的JRE System Library仍为J2SE-1.5版本。

鼠标右键点击mavendemo -> maven ->update project点击后发现Libraries下的JRE System Library已经为JavaSE-1.8版本。

项目结构中我们缺  src/main/java,src/test/java ,src/test/resources三个文件夹,现在我们来解决main/java missing的情况,解决办法:在项目上右键选择properties,然后点击java build path,在Librarys下,编辑JRE System Library,选择eclipse配置的jdk就可以了。

c.手动添加jar包依赖

pom.xml文件中现有dependencies节点,里面配置的为当前已有的junit和servlet-api包的情况。如下

    <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.0</version>
<scope>provided</scope>
</dependency>
</dependencies>

可以在dependencies下继续添加多个依赖的jar包;

照葫芦画瓢系列之Java --- Maven的集成和使用的更多相关文章

  1. 照葫芦画瓢系列之Java --- Maven的配置

    一.Maven仓库分类 Maven中,仓库只分为两类:本地仓库和远程仓库.当Maven根据坐标寻找构件的时候,它首先去查看本地仓库,如果本地仓库有此构件,则直接使用,如果本地仓库不存在此构件,或者需要 ...

  2. 照葫芦画瓢系列之Java --- Maven的介绍和安装

    一.Maven是什么? Maven 是一个项目管理工具.它负责管理项目开发过程中的几乎所有的东西. 版本 maven有自己的版本定义和规则 构建 maven支持许多种的应用程序类型,对于每一种支持的应 ...

  3. 照葫芦画瓢系列之Java --- eclipse下使用maven创建Struts 2项目

    一.创建Maven项目 http://www.cnblogs.com/zhanqun/p/8425571.html 二.添加struts2核心依赖包以及其他依赖项 打开pom.xm配置界面 点击Add ...

  4. jenkins+maven+docker集成java发布(二)#远程发布

    jenkins+maven+docker集成java发布(一)中写了在Jenkins服务器自动部署业务,那需要将java项目部署到其他服务器怎么操作 这里需要依赖插件Publish Over SSH ...

  5. jenkins+maven+docker集成java发布(一)自动发布

    JAVA项目持续集成发布 标签(空格分隔): java jenkins 微服务中持续集成自动发布是很重要的一个环节,将不同的模块应用自动部署到一台或者N台服务器中如果采用人工部署的方式不太现实 git ...

  6. 【Java探索道路安全系列:Java可扩展的安全架构】一间:Java可扩展的安全体系结构开始

    笔者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell [ ...

  7. SonarQube和Maven的集成

    1.1. SonarQube简介 SonarQube是一款免费用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量通过插件形式,可以支持包括java,C#,C/C++,PL/S ...

  8. Jenkins Jenkins结合GIT Maven持续集成环境配置

    Jenkins结合GIT Maven持续集成环境配置   by:授客 QQ:1033553122 安装Git插件 1 安装Git客户端 1 安装JAVA JDK及MAVEN 2 Jenkins JDK ...

  9. SpringBoot系列之Spring Data Jpa集成教程

    SpringBoot系列之Spring Data Jpa集成教程 Spring Data Jpa是属于Spring Data的一个子项目,Spring data项目是一款集成了很多数据操作的项目,其下 ...

随机推荐

  1. 数字(Number)类型(一)

    多行语句 Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\)来实现多行语句,例如: total = item_one + \ item_two + \ item_three ...

  2. 本地语音识别开源软件pocketsphinx调试总结

    1问题一: fatal error: pocketsphinx.h: No such file or directory 解决方法: $ cd /usr/include $ sudo ln -s /m ...

  3. java的四种内部类详解

    引言 内部类,嵌套在另一个类的里面,所以也称为:嵌套类; 内部类分为以下四种: 静态内部类 成员内部类 局部内部类 匿名内部类 一.静态内部类 静态内部类: 一般也称"静态嵌套类" ...

  4. 《CLR Via C#》读书笔记:26.线程基础

    一.线程开销 操作系统创建线程是有代价的,其主要开销在下面列举出来了. 内存开销 线程内核对象 拥有线程描述属性与线程上下文,线程上下文占用的内存空间为 x86 架构 占用 700 字节.x64 架构 ...

  5. JavaScript易错点 -- 数组比较

    记得当初初学JavaScript时尝试用“==”或“===”比较两个数组是否相等, var a = [1,2,3] var b = [1,2,3] if(a == b){ //false //do s ...

  6. Docker学习之2——镜像

    镜像(Images) 镜像是Docker的三大核心之一,类似于虚拟机,作用和虚拟机是一样的,唯独是组成部分会有些区别.简单的说如果我们想启动一个容器就必须要有镜像.docker运行容器前需要本地存在对 ...

  7. mysql 开发进阶篇系列 54 权限与安全(账号管理的各种权限操作 下)

    1. 查看权限 -- 如果host值不是%, 就要加上host值,下面查看bkpuser用户权限(6个权限, 限本地连接) SHOW GRANTS FOR bkpuser@localhost; -- ...

  8. Android--UI之GridView

    前言 这篇博客介绍一下Android平台下,GridView控件的开发.针对GridView控件的一些常用属性.方法,以及注意事项进行讲解,最后将以一个Demo展示GridView控件的使用. Gri ...

  9. HBase 在人工智能场景的使用

    近几年来,人工智能逐渐火热起来,特别是和大数据一起结合使用.人工智能的主要场景又包括图像能力.语音能力.自然语言处理能力和用户画像能力等等.这些场景我们都需要处理海量的数据,处理完的数据一般都需要存储 ...

  10. shell中$后加引号有什么用($"string"和$'string')

    bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 有些时候在某些服务管理脚本中看到$"$string& ...