照葫芦画瓢系列之Java --- Maven的集成和使用
一、和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的集成和使用的更多相关文章
- 照葫芦画瓢系列之Java --- Maven的配置
一.Maven仓库分类 Maven中,仓库只分为两类:本地仓库和远程仓库.当Maven根据坐标寻找构件的时候,它首先去查看本地仓库,如果本地仓库有此构件,则直接使用,如果本地仓库不存在此构件,或者需要 ...
- 照葫芦画瓢系列之Java --- Maven的介绍和安装
一.Maven是什么? Maven 是一个项目管理工具.它负责管理项目开发过程中的几乎所有的东西. 版本 maven有自己的版本定义和规则 构建 maven支持许多种的应用程序类型,对于每一种支持的应 ...
- 照葫芦画瓢系列之Java --- eclipse下使用maven创建Struts 2项目
一.创建Maven项目 http://www.cnblogs.com/zhanqun/p/8425571.html 二.添加struts2核心依赖包以及其他依赖项 打开pom.xm配置界面 点击Add ...
- jenkins+maven+docker集成java发布(二)#远程发布
jenkins+maven+docker集成java发布(一)中写了在Jenkins服务器自动部署业务,那需要将java项目部署到其他服务器怎么操作 这里需要依赖插件Publish Over SSH ...
- jenkins+maven+docker集成java发布(一)自动发布
JAVA项目持续集成发布 标签(空格分隔): java jenkins 微服务中持续集成自动发布是很重要的一个环节,将不同的模块应用自动部署到一台或者N台服务器中如果采用人工部署的方式不太现实 git ...
- 【Java探索道路安全系列:Java可扩展的安全架构】一间:Java可扩展的安全体系结构开始
笔者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell [ ...
- SonarQube和Maven的集成
1.1. SonarQube简介 SonarQube是一款免费用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量通过插件形式,可以支持包括java,C#,C/C++,PL/S ...
- Jenkins Jenkins结合GIT Maven持续集成环境配置
Jenkins结合GIT Maven持续集成环境配置 by:授客 QQ:1033553122 安装Git插件 1 安装Git客户端 1 安装JAVA JDK及MAVEN 2 Jenkins JDK ...
- SpringBoot系列之Spring Data Jpa集成教程
SpringBoot系列之Spring Data Jpa集成教程 Spring Data Jpa是属于Spring Data的一个子项目,Spring data项目是一款集成了很多数据操作的项目,其下 ...
随机推荐
- Java NIO工作机制简介
前言 本博客只简单介绍NIO的原理实现和基本工作流程 I/O和NIO的本质区别 NIO将填充和提取缓冲区的I/O操作转移到了操作系统 I/O 以流的方式处理数据,而 NIO 以缓冲区的方式处理数据:I ...
- 几个java小例子
比较两个字符串的值: /*------------------------比较两个字符串的值----------------------*/ String st1="hello"; ...
- linux上安装jdk环境
只在于安装jdk1.6.jdk1.7和jdk1.8,其他版本请绕行,目的在于方便自己和大家以后急于做jdk环境,苦于没有jdk安装包和设置变量的过程,我将安装包均放在云盘中, 需要直接在连接中找即可: ...
- Linux 下 pushd,popd,cd- 用法
一,为何要使用这几个命令? 可能大家会有疑问,为何要使用这几个命令, 难道用cd不就可以切换目录了吗? 没错,使用cd就可以切换到需要访问的目录, 但是有时会是一个路径很长,层次很多的目录 ...
- new 操作符 做了什么
new 操作符 做了什么 new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例. 假设Test是一个构造函数,通常在创建对象的实例时,要使用new,eg:test = new ...
- Java异常处理 10 个最佳实践
异常处理是Java 开发中的一个重要部分.它是关乎每个应用的一个非功能性需求,是为了处理任何错误状况,比如资源不可访问,非法输入,空输入等等.Java提供了几个异常处理特性,以try,catch 和 ...
- 第13组_16通信3班_045_OSPFv3作业
IPv6 路由-OSPFv3 实验目的 1. 掌握 OSPFv3 的配置方法 2. 掌握在帧中继环境下 OSPFv3 的配置方法 3. 掌握 OSPFv3 NSSA 的配置方法 4. 学会查看 O ...
- 在Mac上安装MongoDB,配置全局路径
1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...
- VueJs(11)---vue-router(命名路由,命名视图,重定向别名,路由组件传参)
vue-router 上篇文章讲了第一篇vue-router相关文章,文章地址:VueJs(10)---vue-router(进阶1) 一.命名路由 有时候,通过一个名称来标识一个路由显得更方便一些, ...
- redis 系列2 知识点概述
一.概述 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表 ...