`
azrael6619
  • 浏览: 580999 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

maven2起步

阅读更多

 与maven1 相比,maven2可算是几乎重写了,不过从速度来说应该更快。 
主要的几个新特性包括:(详细参考http://www.ibm.com/developerworks/cn/opensource/os-maven2/index.html) 
1. 更快、更简单 
速度方面可以比上ant了 
2. 更少的配置文件 
现在的配置文件只剩下了settings.xml和pom.xml了。 
3. Plugin语言更换 
语言开始支持java,BeanShell和ant 
4. 提供了预定义的模版 
这点是最有帮助的,用户可以自己定义自己的项目模版了,就像用appfuse一样生成项目结构 
5. 生命周期的引入 
在Maven2中有了明确的生命周期概念,而且都提供与之对应的命令,使得项目构建更加清晰明了。 
6. 新增Dependency Scope 
这点也比较重要,有些用于test范围的包,可以不用加入依赖了 
7. 传递依赖,简化依赖管理 
这是最为方便的,可以省了很多配置。如a 依赖 b,b 依赖c 默认 a也会依赖 c。但是也会带来隐患,如版本冲突。不过maven 也已经考虑到了,可以使用exclusions来排除相应的重复依赖

介绍了那么多,现在切入正题,开始maven2 之旅: 
首些下载需要的工具: 
maven2: http://maven.apache.org/download.html 最主要的 
maven-proxy:用来代理repository,使用本地库代替maven2的远程库 
http://maven-proxy.codehaus.org/ 
continuum:一个不错的持续整合工具,用于自动build。支持ant,maven 
http://maven.apache.org/continuum/ 
svn:版本控制工具相信都已经配置了。 
maven 用于eclipse的插件 ,在maven主站有下载,不错的插件。当然idea也有相应的插件 
最后,http,服务器是必不可少的。用于内部开发使用。 
可以使用apache ,或者jetty http://www.mortbay.org/

安装: 
安装maven2很简单,把下载来的maven包解开就行了。(目前我的配置都在win2003上,还没有应用于linux,所有所有的配置都针对 windows).增加相应的环境变量m2_home=maven2的安装目录,不要忘了设置java_home的目录。另外在path中增加% m2_home%\bin;可以直接在命令行下面使用mvn。 
其他工具的安装在后续的文章会介绍。

开始第一个mvean2项目: 
mvn archetype:create -DgroupId=com.mycompany.app \ 
-DartifactId=my-app 
简单介绍一下 groupId相当于你的组织,如同org.springframework,会转化为相应得本地路径 artifactId,你主要的jar包名称,也就是你要打成的jar 名称。 
编译应用资源 
mvn complile 
编译相应的jave 文件 
编译测试类以及运行测试类 
mvn test 
运行测试类 
如果只想编译test,执行 
mvn test-compile 
打包和安装你的本地库 
打包: 
mvn package 
安装: 
mvn install 
创建web site 
mvn site 
清除所有输出 
mvn clean 
创建相关的ide文件 
mvn idea:idea 或者 mvn eclipse:eclipse

顺便说一下,maven2 是有生命周期这一概念的,也就是说如果你执行package,相应的以前步骤,如compile,test等都会自动执行。 
刚开始执行会比较慢,需要从maven2远程库中下载所有的文件到本地。如果你的本地没有相应的依赖包,则每次maven都会去远程下载,所以配置一个镜像库就比较重要了。 
另外介绍一下主要的参考资料: 
mavn2 主站:主要的pom和settings.xml参考资料 
Better Builds with Maven http://www.mergere.com/m2book_download.jsp 
不错的书,主要通过例子介绍。可惜都是E文的,花点时间还是值得的。

分享到:
评论

相关推荐

    Maven完全手册

    maven2 起步 相信maven1 大家都已经很熟悉了,具体maven能做什么,就不详细说了。个人觉得maven在开源项目中用的还是比较多的,公司内部,就不太清楚了。我以前的公司用过一段时间,不过后来就没有下文了。 与...

    Spring Boot 2 Maven 模板

    **Spring Boot 2 Maven 模板详解** Spring Boot 2 是一个基于 Java 的框架,它旨在简化Spring应用程序的初始设置和常规配置。Maven作为Java项目管理工具,可以帮助我们管理和构建Spring Boot应用。本模板是专为学习...

    Maven起步

    ### Maven起步:初学者指南 #### 一、Maven简介 Maven是一个强大的自动化构建工具,主要用于Java项目的构建、依赖管理和项目信息管理。它通过一套简单统一的标准来规范项目的构建过程,使得开发者能够轻松地从繁琐...

    maven项目开发的maven3.3.9使用包

    2. **配置SpringBoot依赖**:在POM.xml中添加SpringBoot的起步依赖(starter),如`spring-boot-starter-web`,Maven会自动引入所有必要的依赖。 3. **构建与打包**:执行`mvn package`命令,Maven会将SpringBoot...

    maven安装包-迁移备份

    2. **添加依赖**:在`pom.xml`中添加所需的SpringBoot起步依赖和其他第三方库。 3. **运行应用**:通过`mvn spring-boot:run`命令启动应用,或者在IDE中直接运行主类。 总结来说,"maven安装包-迁移备份"是一个涵盖...

    maven包,spring boot的maven包,用于离线搭建工程

    在使用Spring Boot时,开发者首先需要在POM.xml文件中添加所需的依赖,例如Spring Boot的起步依赖(`spring-boot-starter`)以及针对MySQL和MyBatis的依赖。然后,通过Maven的`mvn install`命令将这些依赖下载到本地...

    SpringBoot项目使用maven配置文件

    - 通过标签管理项目所需的各种库,例如Spring Boot的起步依赖(spring-boot-starter)和其他业务相关的库。 - 标签定义了构建过程,包括源码目录、资源目录、打包类型(如jar或war)等。 4. Maven生命周期: - ...

    springboot(web项目,非maven)

    7. **依赖管理**:虽然不是Maven,但Spring Boot通过其起步依赖(starters)提供了一种类似的功能,帮助开发者轻松引入所需依赖。 8. **测试**:可能包含`@Test`注解的测试类,用于单元测试和集成测试。 9. **运行...

    maven-3.6.0.zip

    例如,你可以在`pom.xml`中添加Spring Boot的起步依赖(starter dependency),如`spring-boot-starter-web`,这样Maven会自动处理相关的依赖关系: ```xml <groupId>org.springframework.boot <artifactId>...

    Maven3.3.9.zip

    在Maven 3.3.9这个版本中,由于声明包含"spring-Boot几乎所有资源",我们可以理解为该压缩包内可能包含了Spring Boot的起步依赖、相关模块和示例代码,方便开发者快速启动一个新的Spring Boot项目。这可能包括了...

    非maven springboot项目

    1. **手动下载依赖**:在没有Maven的情况下,我们需要从Maven中央仓库或其他可靠的来源手动下载所需的Spring Boot起步依赖和其他依赖库。这包括Spring Boot Starter Web、Spring Boot Starter Data JPA等,以及相应...

    maven-spring 实例

    通过在POM.xml中添加Spring Boot的起步依赖,可以快速启动一个包含Spring核心功能的应用。例如: ```xml <groupId>org.springframework.boot <artifactId>spring-boot-starter-web ``` Spring Boot默认包含...

    Maven整合SpringBoot框架

    当我们在POM中声明Spring Boot的起步依赖后,Maven会自动下载所有必要的库并帮助我们构建项目。 在创建Spring Boot项目时,我们需要选择一个starter parent,这是Spring Boot提供的一个父级POM,它包含了基本的依赖...

    apache-maven-3.8.1.zip

    在SpringCloud框架中,Maven作为构建工具,可以帮助开发者管理项目依赖,自动下载所需的库,构建微服务应用程序,并通过Spring Cloud的起步依赖(Starters)来简化配置。开发者可以通过在POM.xml文件中声明依赖,...

    springboot项目 maven聚合

    Spring Boot的核心特性包括自动配置、起步依赖和内嵌的HTTP服务器(如Tomcat或Jetty),使得开发人员能够快速启动和运行应用。 其次,项目采用了**Maven** 作为构建工具。Maven是一个项目管理和综合工具,它通过一...

    两个基于Maven+SpringBoot的实例

    在Maven项目中集成SpringBoot,首先需要在POM.xml文件中声明SpringBoot的起步依赖(Starter Dependency)。这些起步依赖包含了SpringBoot的核心功能和其他模块,例如web、data、security等。这样,Maven会自动下载...

    SpringBoot Demo(非maven)

    SpringBoot的“起步依赖”(Starters)是一组特定用途的Maven或Gradle依赖,例如`spring-boot-starter-web`用于Web应用,`spring-boot-starter-data-jpa`用于数据库操作。在非Maven项目中,开发者需要识别所需的起步...

    springboot 基于maven的多模块工程

    它通过内置的Tomcat服务器、自动配置和起步依赖,使得开发者能够快速启动和运行项目。而Maven是一个项目管理和综合工具,它帮助开发者管理项目依赖、构建以及发布。 在“springboot基于maven的多模块工程”中,我们...

    java maven工程 spring boot 学习源码

    本学习资源包“java maven工程 spring boot 学习源码”提供了一个可以直接运行的示例工程,有助于深入理解Spring Boot和Maven的结合使用。 首先,我们需要了解Spring Boot的核心特性。Spring Boot通过内嵌的Servlet...

Global site tag (gtag.js) - Google Analytics