最近学习Maven,发现其真的很强大,所以学一点也记一点。
使用Maven的最大好处在于:生成工程骨架和管理JAR包依赖。
Maven自带了很多的工程骨架,想自定义骨架可以使用交互式命令:
mvn archetype:generate
我的是Maven 2.2.1版本,系统自带的骨架一共有41个:
1: internal -> appfuse-basic-jsf (AppFuse archetype for creating a web application with Hibernate, Spring and JSF)
2: internal -> appfuse-basic-spring (AppFuse archetype for creating a web application with Hibernate, Spring and Spring MVC)
3: internal -> appfuse-basic-struts (AppFuse archetype for creating a web application with Hibernate, Spring and Struts 2)
4: internal -> appfuse-basic-tapestry (AppFuse archetype for creating a web application with Hibernate, Spring and Tapestry 4)
5: internal -> appfuse-core (AppFuse archetype for creating a jar application with Hibernate and Spring and XFire)
6: internal -> appfuse-modular-jsf (AppFuse archetype for creating a modular application with Hibernate, Spring and JSF)
7: internal -> appfuse-modular-spring (AppFuse archetype for creating a modularapplication with Hibernate, Spring and Spring MVC)
8: internal -> appfuse-modular-struts (AppFuse archetype for creating a modularapplication with Hibernate, Spring and Struts 2)
9: internal -> appfuse-modular-tapestry (AppFuse archetype for creating a modular application with Hibernate, Spring and Tapestry 4)
10: internal -> maven-archetype-j2ee-simple (A simple J2EE Java application)
11: internal -> maven-archetype-marmalade-mojo (A Maven plugin development project using marmalade)
12: internal -> maven-archetype-mojo (A Maven Java plugin development project)
13: internal -> maven-archetype-portlet (A simple portlet application)
14: internal -> maven-archetype-profiles ()
15: internal -> maven-archetype-quickstart ()
16: internal -> maven-archetype-site-simple (A simple site generation project)
17: internal -> maven-archetype-site (A more complex site project)
18: internal -> maven-archetype-webapp (A simple Java web application)
19: internal -> jini-service-archetype (Archetype for Jini service project creation)
20: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype)
21: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (no persistence) Archetype)
22: internal -> softeu-archetype-jsf (JSF+Facelets Archetype)
23: internal -> jpa-maven-archetype (JPA application)
24: internal -> spring-osgi-bundle-archetype (Spring-OSGi archetype)
25: internal -> confluence-plugin-archetype (Atlassian Confluence plugin archetype)
26: internal -> jira-plugin-archetype (Atlassian JIRA plugin archetype)
27: internal -> maven-archetype-har (Hibernate Archive)
28: internal -> maven-archetype-sar (JBoss Service Archive)
29: internal -> wicket-archetype-quickstart (A simple Apache Wicket project)
30: internal -> scala-archetype-simple (A simple scala project)
31: internal -> lift-archetype-blank (A blank/empty liftweb project)
32: internal -> lift-archetype-basic (The basic (liftweb) project)
33: internal -> cocoon-22-archetype-block-plain ([http://cocoon.apache.org/2.2/maven-plugins/])
34: internal -> cocoon-22-archetype-block ([http://cocoon.apache.org/2.2/maven-plugins/])
35: internal -> cocoon-22-archetype-webapp ([http://cocoon.apache.org/2.2/maven-plugins/])
36: internal -> myfaces-archetype-helloworld (A simple archetype using MyFaces)
37: internal -> myfaces-archetype-helloworld-facelets (A simple archetype usingMyFaces and facelets)
38: internal -> myfaces-archetype-trinidad (A simple archetype using Myfaces and Trinidad)
39: internal -> myfaces-archetype-jsfcomponents (A simple archetype for create custom JSF components using MyFaces)
40: internal -> gmaven-archetype-basic (Groovy basic archetype)
41: internal -> gmaven-archetype-mojo (Groovy mojo archetype)
当然,我们完全可以通过命令指定骨架,下面列出几常用的用法:
创建普通Java项目:
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id]
mvn archetype:create -DgroupId=com.aboy -DartifactId=webmap
创建WEB项目:
mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] -DarchetypeArtifactId=maven-archetype-webapp
mvn archetype:create -DgroupId=com.aboy -DartifactId=webmap -DarchetypeArtifactId=maven-archetype-webapp
Maven其它命令简单说明:
1、archetype( 内建插件,他的create任务将建立项目骨架 ): archetype:create
2、groupId 项目的java包结构:com.aboy
3、artifactId 项目的名称:webmap
4、显示Maven默认设置
mvn help:effective-pom
5、几个常用的archetypeArtifactId(项目骨架的类型):
* maven-archetype-archetype
* maven-archetype-j2ee-simple
* maven-archetype-mojo
* maven-archetype-portlet
* maven-archetype-profiles
* maven-archetype-quickstart
* maven-archetype-simple
* maven-archetype-site
* maven-archetype-site-simple
* maven-archetype-webapp
6、生成清除Eclipse项目结构:
mvn eclipse:eclipse
mvn eclipse:clean
7、清理(删除target目录下编译内容)
mvn clean
8、仅打包Web页面文件
mvn war:exploded
9、Maven的主要生命周期:
validate: 验证项目是否正确以及相关信息是否可用
compile: 编译
test: 通过junit进行单元测试
package: 根据事先指定的格式(比如jar),进行打包
integration-test: 部署到运行环境中,准备进行集成测试
verify: 对包进行有效性性和质量检查
install: 安装到本地代码库
deploy: 在集成或发布环境,将包发布到远程代码库
分享到:
相关推荐
1. 更快、更简单 比起 Maven1 那不急不慢的运行速度,Maven2在速度上有了质的飞跃,甚至与Ant相比也毫不逊色(当然,下载不算)。除此之外,"简化工作,使用业界公认的最佳实践"也是是 Maven2 的另一大主题,其他的...
maven-archetype-plugin 能让用户生成项目骨架,Maven 初学者最开始执行的 Maven 命令可能就是 mvn archetype:generate,这实际上就是让 maven-archetype-plugin 生成一个很简单的项目骨架,帮助开发者快速上手。...
在安装好服务器和分析器后,需要创建配置文件sonar-project.properties,并置于所需分析项目的根目录下。然后,执行sonar-runner命令,以启动代码质量检测和分析。打开http://localhost:9000/即可见该项目的分析结果...
想要使宠物主人更好,更快,更强大吗? 欢迎捐款,打开请求请求并分享您的代码! 只需通过点击该页面右上角的图标叉库和参考让你的副本和运行,交互与插件。 :speech_balloon: 支持 想到一个好主意吗? 发现问题或...
五、CacheCloud在搜狐的规模每天100 亿次命令调用2T 的内存空间800 个Redis实例100 台机器六、CacheCloud环境需求Java 7Maven 3MySQLRedis 3七、CacheCloud快速开始1、初始化数据库 导入项目中cachecloud.sql初始化...
该联通SGIP协议开发包源码旨在提供对中国...此外,该开发包还提供了完整的文档和示例代码,以帮助您更好地理解其用法和实现。因此,您可以放心地使用这个开发包来提高您的短信发送效率,从而更好地满足您的业务需求。
Gradle比Maven更快,在我看来,它提供了更好,更轻松的体验,这使其成为应对这一挑战的不错选择。 先决条件 您需要安装才能构建此项目。 用法 要编译和构建项目,请在根目录上运行以下命令: > gradle build 要...
如果您已经安装了Maven 3.2.5(或更高版本),则可以直接使用它 mvn安装 启动和停止WildFly 成功构建后,切换到bin目录 $ cd build / target / wildfly- [version] / bin 以域模式启动服务器 $ ./domain.sh 以...
1. 容易上手,提升开发效率,为 Spring 开发提供一个更快、更简单的开发框架。 2. 开箱即用,远离繁琐的配置。 3. 提供了一系列大型项目通用的非业务性功能,例如:内嵌服务器、安全管理、运行数据监控、运行状况...
Jenkins 可以自动化构建、测试和部署软件,使开发者可以更好地控制和管理软件的生命周期。 GitLab 概述 GitLab 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的 Git 项目仓库,可通过 Web 界面迚...
本文总结了 20 道顶尖的 Spring Boot 面试题,旨在帮助开发者更好地理解 Spring Boot。 1. 什么是 Spring Boot? Spring Boot 是 Spring 开源组织下的子项目,是 Spring 组件一站式解决方案,主要是简化了使用 ...
是使JavaScript下载和运行速度更快的工具。 这是一个真正JavaScript编译器。 它不是从源语言编译为机器代码,而是从JavaScript编译为更好JavaScript。 它解析您JavaScript,对其进行分析,删除无效代码,然后重写并...
最好使用的git界面管理工具,可避免代码冲突和繁琐的命令,sourceTree 是我们的开发变得更快 最好使用的git界面管理工具,可避免代码冲突和繁琐的命令,sourceTree 是我们的开发变得更快
主要技术包括:⼤数据前篇(什么是⼤数据,应⽤场景,如何学习⼤数据库,虚拟机概念和安装等)、Linux常见命令(⽂件管理、系 统管理、磁盘管理)、Linux Shell编程(SHELL变量、循环控制、应⽤)、Hadoop⼊门...
java抢红包源码 持续更新,觉得有帮助的欢迎star,希望补充内容的欢迎提issues ...Laravel性能更快, 单独说性能最好,还是鸟哥的Yaf 但是Yaf功能太过于简陋,很多组件需要自己写,易用性较差 综合而言,phalcon在
为了更好地帮助开发者理解和使用AppStore-be,我们提供了指导开发者如何在本地快速启动,运行AppStore项目。 编译建造 AppStore-be项目基于docker进行了容器化改造,在编译构建时共分为两步 编译 AppStore-be是基于...
如果您需要桌面发布的报告,则Jasper报告之类的方法会更好。 如果您需要创建具有分组,总计和小计的基于列的报告,那么此框架将为您提供帮助。 例子 Test文件夹具有几个JUNIT测试,可以运行这些测试以生成示例报告 ...
例如,给定句子“香蕉是钾的极好来源”,混响将提取三元组(香蕉,是钾的来源)。 混响主页上提供了更多信息: 快速开始 如果您想在少量文本上运行混响而不修改其源代码,我们提供了一个可以从命令行运行的可执行 ...