一、快速创建java/web项目
1)dos中转到需要存储项目的目录
2)
创建java项目:mvn archetype:generate
创建web项目:mvn archetype:generate-DarchetypeArtifactId=maven-archetype-webapp
可加参数:-DarchetypeCatalog=internal,设置不与网络交互获得模板增快建项速度。
[INFO]Generating project in Interactive mode (这里会卡一会儿,因为要联网获取项目模板)
[INFO] No archetype defined.Using maven-archetype-quickstart(org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Choose archetype:
1: remote ->br.com.ingenieux:elasticbeanstalk-service-webapp-archetype (A Maven ArchetypeEncompassing RestAssured, Jetty, Jackson, Guice and Jersey for PublishingJAX-RS-based Services on AWS' Elastic Beanstalk Service)
... (这里会自动列出很多项目模板,每种模板前面会有一个数字序号)
336: remote ->org.apache.maven.archetypes:maven-archetype-quickstart (An archetype whichcontains a sample Maven project.)
...
Choose a number or apply filter(format: [groupId:]artifactId, case sensitive contains): 336: (这里根据每个人机器上安装的eclipse插件不同,可能默认的数字不是这个,先不管,直接回车)
Chooseorg.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
Choose a number: 6: (直接回车)
Define value for property'groupId': : cnblogs (可暂时先理解成类似package或namespace的名称,通常我们填写组织机构名称缩写)
Define value for property'artifactId': : maven-hello-world (组件名称,可暂时理解成项目名称)
Define value for property'version': 1.0-SNAPSHOT: : (版本号,直接回车,默认1.0-SNAPSHOT)
Define value for property'package': cnblogs: : (打包后的jar文件名,相当于.net中项目最后生成的程序集dll名称)
Confirm properties configuration:
groupId: cnblogs
artifactId: maven-hello-world
version: 1.0-SNAPSHOT
package: cnblogs
Y: : (直接回车确认)
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parametersfor creating project from Old (1.x) Archetype: maven-archetype-quickstart:1.1
[INFO]----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value:cnblogs
[INFO] Parameter: packageName,Value: cnblogs
[INFO] Parameter: package, Value:cnblogs
[INFO] Parameter: artifactId,Value: maven-hello-world
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS (看到这个,表示项目创建成功!)
[INFO]------------------------------------------------------------------------
3)进入下级目录,查看tree
C:.
├───src
│ ├───main
│ │ └───java
│ │ └───cnblogs
│ └───test
│ └───java
│ └───cnblogs
└───target
└───classes
└───cnblogs
注意上面带红色的目录名,maven项目采用“约定优于配置”的原则,src/main/java约定用于存放源代码,src/main/test用于存放单元测试代码,src/target用于存放编译、打包后的输出文件。这是全世界maven项目的通用约定,请记住这些固定的目录结构。
4)编译
mvn compile
编译完成自动在target下生成class文件
5)测试
mvn test
6)打包
mvn package
java项目在target目录下生成一个jar包。web项目在target目录下生成一个war包。
7)项目运行
①web项目运行
把打包生成的war包加入Tomcat目录下的webapps文件夹里,在浏览器中输入http://localhost:8080/war包名/即可看到创建的web项目。
三、简单汇总mvn功能
打包:mvn package
编译:mvn compile
编译测试程序:mvn test-compile
清空:mvn clean
运行测试:mvn test
生成站点目录: mvn site
生成站点目录并发布:mvn site-deploy
安装当前工程的输出文件到本地仓库: mvn install
四、强制本地插件更新到最新
在dos界面下,切换到本地仓库的地方:
C:\Users\Administrator\.m2\repository,输入如下命令:
for /r %i in (*.lastUpdated) do del %i