当前位置: 首页 > news >正文

MyEclipse下Maven的安装配置

Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。

发文时,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,Ant 的项目管理工具(作为 make的替代工具)不能满足绝大多数开发人员的需要。通过检查 Ant 构建文件,很难发现项目的相关性信息和其它信息(如开发人员/拥有者、版本或站点主页)。

Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

Maven这个单词来自于意第绪语,意为知识的积累,最早在Jakata Turbine项目中它开始被用来试图简化构建过程。当时有很多项目,它们的Ant build文件仅有细微的差别,而JAR文件都由CVS来维护。于是Maven创始者开始了Maven这个项目,该项目的清晰定义包括,一种很方便的发布项目信息的方式,以及一种在多个项目中共享JAR的方式。

方法/步骤

 
  1.  

    Maven和Ant的区别一:

    1.ant脚本是可以直接运行在maven中的。maven和ant最大的差别就是在于maven的编译以及所有的脚本都有一个基础,就是POM(project object model)。这个模型定义了项目的方方面面,然后各式各样的脚本在这个模型上工作,而ant完全是自己定义,显然maven更胜一筹。

     

    2.maven对所依赖的包有明确的定义,如使用那个包,版本是多少,一目了然。而ant则通常是简单的inclde 所有的jar。导致的最终结果就是,你根本无法确定JBoss中的lib下的common-logging 是哪个版本的,唯一的方法就是打开 META-INF 目录下MANIFEST.MF。

     

    3.maven是基于中央仓库的编译,即把编译所需要的资源放在一个中央仓库里,如jar,tld,pom,等。当编译的时候,maven会自动在仓库中找到相应的包,如果本地仓库没有,则从设定好的远程仓库中下载到本地。这一切都是自动的,而ant需要自己定义了。这个好处导致的结果就是,用maven编译的项目在发布的时候只需要发布源码,小得很,而反之,ant的发布则要把所有的包一起发布,显然maven又胜了一筹。

    4.maven有大量的重用脚本可以利用,如生成网站,生成javadoc,sourcecode reference,等。而ant都需要自己去写。

     

    5.maven目前不足的地方就是没有象ant那样成熟的GUI界面,不过mavengui正在努力中。目前使用maven最好的方法还是命令行,又快又方便

  2.  

    Maven的优势:

    •协同开发的基本规范,为大家提供方便的协作的模式,能增加代码的复用,提高生产率。

     

    •提供方便,规范化的打包方法,是公司完成自动构建系统的核心部分,能帮助提高敏捷开发的效率(敏捷开发提倡尽早集成)。

     

    •减少冗余,减少出错的可能。

     

    •中心资源库管理,能减低源码库的大小,中心资源库可以统一定期备份。

     

    •目录结构规范,让开发者从一个maven项目过度到另一maven项目很容易。

     

    •大量的开源项目使用了maven。

  3.  

    Maven常用命令:

    •mvn archetype:generate :创建 Maven 项目

     

    •mvn compile :编译源代码

     

    •mvn test-compile :编译测试代码

     

    •mvn test : 运行应用程序中的单元测试

     

    •mvn site : 生成项目相关信息的网站

     

    •mvn clean :清除目标目录中的生成结果

     

    •mvn package : 依据项目生成 jar 文件

     

    •mvn install :在本地 Repository 中安装 jar

     

    •mvn deploy:将jar包发布到远程仓库

     

    •mvn eclipse:eclipse :生成 Eclipse 项目文件

  4.  

    Maven的安装配置:

    在安装maven之前,先确保已经安装JDK1.7及以上版本,并且配置好环境变量。

     

    下载maven3,最新版本是Maven3.2.1 ,下载地址:http://maven.apache.org/download.html  

     

    下载apache-maven-3.2.1-bin.zip文件后,并解压到  D:\maven\apache-maven-3.2.1

     

    配置maven3的环境变量:先配置M2_HOME的环境变量,新建一个系统变量:M2_HOME , 路径是:D:\maven\apache-maven-3.2.1,如图所示:

    MyEclipse下Maven的安装配置
  5.  

    再配置path环境变量,在path值的末尾添加"%M2_HOME%\bin",如下图所示;

    MyEclipse下Maven的安装配置
  6.  

    点击确定之后,打开cmd窗口:输入 mvn -version,出现如下内容表示安装成功。

    MyEclipse下Maven的安装配置
  7.  

    Maven添加本地仓库:

    打开本地存放maven目录 例如:D:\maven\apache-maven-3.2.1,打开conf文件夹下的settings.xml文件,找到第53行,把注释去掉,修改成:<localRepository>E:/mvnRespo</localRepository>

  8.  

    eclipse中的设置:

    为Eclipse安装Maven插件(默认已有,无需安装)为Eclipse配置MAVEN

     

    从Eclipse的菜单栏点击Windows -> Preferences -> Maven  -> Installations,将之前解压的maven添加进来,如图所示

    MyEclipse下Maven的安装配置
  9.  

    点击User Settings 使用我们自己的Maven配置,如图所示

    MyEclipse下Maven的安装配置
  10.  

转载于:https://www.cnblogs.com/zxbzl/p/6699512.html

相关文章:

  • python闭包与装饰器
  • PHP技能评测
  • 4月13
  • FancyBox的使用技巧 (汇总)
  • 使用Maven对JAVA程序打包-带主类、带依赖【转】
  • CSS3知识点整理一些demo
  • python loss layer: does not need backward computation?
  • [CSS] 点击事件触发的动画
  • ZooKeeper监控平台搭建
  • Problem A: 字符的变化
  • 【MongoDB学习-在.NET中的简单操作】
  • spring_restful_json_jdbc
  • Docker - 生成镜像
  • 飞鱼星路由器配置端口映射
  • 《Linux Device Drivers》第十八章 TTY驱动程序——note
  • [deviceone开发]-do_Webview的基本示例
  • 2019.2.20 c++ 知识梳理
  • Angular 4.x 动态创建组件
  • emacs初体验
  • HTML中设置input等文本框为不可操作
  • Java方法详解
  • MySQL-事务管理(基础)
  • MySQL数据库运维之数据恢复
  • php ci框架整合银盛支付
  • PHP CLI应用的调试原理
  • Python实现BT种子转化为磁力链接【实战】
  • spark本地环境的搭建到运行第一个spark程序
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 离散点最小(凸)包围边界查找
  • 通过npm或yarn自动生成vue组件
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 小而合理的前端理论:rscss和rsjs
  • 协程
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 树莓派用上kodexplorer也能玩成私有网盘
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • (1)(1.13) SiK无线电高级配置(五)
  • (八)c52学习之旅-中断实验
  • (博弈 sg入门)kiki's game -- hdu -- 2147
  • (二)丶RabbitMQ的六大核心
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (三)uboot源码分析
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (五)Python 垃圾回收机制
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • *** 2003
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .net 提取注释生成API文档 帮助文档
  • .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调