dos中用maven创建java、web项目

一、名词解释

  仓库不同项目调用公用的jar包时,为减轻存储压力以及更新的方便,专门设置一个区域--localRepository(本地仓库)用来储存这些jar包。

首次运行mvn: 运行任何指令都会往仓库中下载jar包,如果下载卡住,使用ctrl+c终止当前命令,重新输入加载即可。

 

二、快速创建java/web项目

 

1)dos中转到需要存储项目的目录

 

2) 

  创建java项目:mvn archetype:generate

  创建web项目:mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp

  可加参数:-DarchetypeCatalog=internal,设置不与网络交互获得模板增快建项速度

 

  以下转自http://www.cnblogs.com/yjmyzz/p/3495762.html

[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 Archetype Encompassing RestAssured, Jetty, Jackson, Guice and Jersey for Publishing JAX-RS-based Services on AWS' Elastic Beanstalk Service)
... (这里会自动列出很多项目模板,每种模板前面会有一个数字序号)
 
336: remote -> org.apache.maven.archetypes:maven-archetype-quickstart (An archetype which contains a sample Maven project.)
...
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 336: (这里根据每个人机器上安装的eclipse插件不同,可能默认的数字不是这个,先不管,直接回车)
Choose org.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 parameters for 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项目。

②java项目运行

没有main方法的class文件运行:打开项目根目录下的pom.xml,

</project>前增加内容:
<build>
        <finalName>${project.artifactId}</finalName>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <executable>java</executable>          
                    <arguments>                       
                        <argument>-classpath</argument>
                        <classpath>
                        </classpath>
                        <argument>cnblogs.App</argument>
                    </arguments>
                </configuration>
            </plugin>
        </plugins>
    </build>
 
三、简单汇总mvn功能

打包:mvn package

编译:mvn compile

编译测试程序:mvn test-compile

清空:mvn clean

运行测试:mvn test

生成站点目录: mvn site

生成站点目录并发布:mvn site-deploy

安装当前工程的输出文件到本地仓库: mvn install

posted @ 2015-08-07 11:31  动如参与商  阅读(720)  评论(0编辑  收藏  举报