热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Maven开发

  1. Maven简介:

Maven是 Apache软件基金会的一个开源项目,它用来帮助开发者管理项目依赖(管理项目中的jar)、完成项目的编译、测试、

打包和发布等工作。

官网:htt:/ maven. apache. org

·使用 Maven的好处

1、促进项目开发过程规范化;

2、项目资源和文档管理自动、高效

3、利用 Maven及其插件还可以获得代码检査报告、单元测试覆盖率、实现集成测试等。

使用maven首先eclipse中必须要集成maven插件

没有可自己集成maven插件(参考资料)

注:Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通畅。

Maven 中的概念

Maven 管理的项目的根目录下都有一个 pom.xml 文件。pom.xml 文件指示 Maven 如何工作。

在 pom.xml 文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、项目依赖的 jar、插件、编译选项等。

一旦在 pom.xml 文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下载相应的构件(jar包)。

项目坐标

在 Maven 中,将每个项目最终生成的文件称为 artifact(构件),它可以是 jar 文件,也可以是 war 文件。

groupId、artifactId(项目名称)、packaging、version 的组合被称为项目的坐标,它们形成了项目的唯一标识,Maven

通过坐标来精确定位构件。其中 groupId、artifactId、version 是必须的,且这三项的值必须唯一,packaging是可选的(默认为 jar)。

2.Maven工程项目结构:

Maven开发

 

3.Maven开发环境搭建:

3.1下载maven服务器

在百度搜索maven官网如下图:

 

 Maven开发

 

 

 

 

点击链接链接到maven官网网站如下图: https://maven.apache.org

 Maven开发

 

点击download进行下载如下图

 Maven开发

 

3.2安装,配置maven

点击下载二进制的apache-maven-3.5.2-bin.zip进行解压,"然后在系统环境中配置环境变量,在path中配置到bin目录,配置成功后输入命令mvn -version查看版本如下图:

 Maven开发

 

表示maven环境配置成功。

接下来根据情况在本地磁盘中建立通过maven下载后jar文件所存储的文件夹,一般我们称为"仓库(repository)";最终是如何将下载的jar文件存储到我们指定的仓库中呢?需要在maven的服务器解压的文件中找到conf文件夹下的settings.xml文件进行修改,如下图所示:

 

 Maven开发

 

到此如何下载完毕,接下来根据你的开发工具在开发工具中配置maven插件,我们在此使用eclipse进行开发,现在所使用的eclipse一般都有maven插件,所以不需要配置,只需要和maven服务器进行关联即可,首先打开eclipse如下图:

 Maven开发

 

找到maven,然后展开如下图:

 Maven开发

 

找到installations进行安装,接下来展开User Settings选项如下图:

 Maven开发

 

关联maven服务器下的settings.xml即可,

到此环境搭建完毕。

 

3.3创建maven工程

接下来新建一个maven工程即可,如下图所示:

 

 

 Maven开发

 

 Maven开发

Maven开发

 

Maven项目目录结构:

项目根目录下有自动生成的 pom.xml 文件。

根目录下一般包含两个子目录:src 和 target。

target 目录用于存放项目构建的输出文件,比如 class 文件以及打包后的 jar 文件等。

src 目录下通常分为如下目录:

 Maven开发

 

3.4修改目录结构并配置依赖

1、项目目录如果不足,可手工添加;

2、项目右键->Java EE Tools->Generate Deployment Descriptor Stub

生成 web.xml 文件;

3、项目右键->Maven->Update Project

 

3.5 maven环境测试案例下载jar文件

在百度搜索maven仓库官网(http://mvnrepository.com/)如下图所示:

 Maven开发

 

在此官网就可以下载自己所需开发jar包,继续点击链接打开如下:

 Maven开发

 

例如下载servlet jar包

在Pom.xml文件配置jar包信息,使用maven自动下载jar包

            javax.servlet

            javax.servlet-api

            3.1.0

            provided

        

 

元素

该元素用于配置依赖,内部可包含多个

示例如下:

junit

junit

3.8.1

jar

test

true

 

 

 

各个子元素功能解释:

,:依赖项的基本坐标

:依赖项的 packaging 类型,默认是 jar;

:依赖项的作用范围,默认是 compile。各个取值及含义如下:

compile:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖包会被拷贝到 war 包中的 lib 目录中

provided:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web 容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包

runtime:编译项目时不使用此依赖项,仅运行时依赖。如果你的项目最终打包为 war 包,则该 jar 包最终跟随工程打包。比如数据库驱动 jar,编译时不需要,运行时才使用。

test:在编译测试代码及运行测试的时候依赖此 jar 包。该 jar 包不会被打包。比如 junit

system: 编译项目主代码和测试代码时使用此依赖项,配合 systemPath 元素显式地指定依赖文件的本地文件系统路径。运行时该 jar 包由目标系统提供。此类依赖不是从 Maven 仓库获取,由本地系统提供,可能造成构件的不可移植,因此应谨慎使用。systemPath 元素也可以引用环境变量,如:

javax.sql

jdbc-stdext

2.0

system

${java.home}/lib/rt.jar

 

六、元素

在 pom 的元素下自定义的名值对,可用于整个 pom 文件中。如下示例:

<junit.version>3.8.1

 

junit

junit

${junit.version}

test

 

3.6maven项目打war

右键pom.xml文件,选择Debug asRun as 都行。

先选择maven clear清除上次打包的版本

然后选择选择Maven install  打包

War包会自动存放在target目录中,war包部署到服务器即可

 Maven开发

 


推荐阅读
  • 本文总结了初学者在使用dubbo设计架构过程中遇到的问题,并提供了相应的解决方法。问题包括传输字节流限制、分布式事务、序列化、多点部署、zk端口冲突、服务失败请求3次机制以及启动时检查。通过解决这些问题,初学者能够更好地理解和应用dubbo设计架构。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • Java如何导入和导出Excel文件的方法和步骤详解
    本文详细介绍了在SpringBoot中使用Java导入和导出Excel文件的方法和步骤,包括添加操作Excel的依赖、自定义注解等。文章还提供了示例代码,并将代码上传至GitHub供访问。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • Android日历提醒软件开源项目分享及使用教程
    本文介绍了一款名为Android日历提醒软件的开源项目,作者分享了该项目的代码和使用教程,并提供了GitHub项目地址。文章详细介绍了该软件的主界面风格、日程信息的分类查看功能,以及添加日程提醒和查看详情的界面。同时,作者还提醒了读者在使用过程中可能遇到的Android6.0权限问题,并提供了解决方法。 ... [详细]
author-avatar
霸气的萱---_299
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有