Maven-初识

107 阅读1分钟

Maven是什么

Maven是一个用于构建和管理项目(一般是Java项目)的工具,可极大加快开发周期。

Maven可以干什么

生成项目骨架

新建一个项目骨架是一个项目的开端。这是一个重复的过程,我们不需要每次都手动创建,Maven的archetype插件内置了许多约定俗成的项目骨架,可以通过命令generate生成,比如创建一个Web项目。

mvn -B archetype:generate\
    -DgroupId=com.mycompany.app\
    -DartifactId=my-app\
    -DarchetypeArtifactId=maven-archetype-quickstart\
    -DarchetypeVersion=1.4

生成的项目骨架如下

my-app
|-- pom.xml
`-- src
    |-- main
    |   `-- java
    |       `-- com
    |           `-- mycompany
    |               `-- app
    |                   `-- App.java
    `-- test
        `-- java
            `-- com
                `-- mycompany
                    `-- app
                        `-- AppTest.java

之后就可以基于这个骨架进行开发。

编译项目

生成的class文件默认位置:${basedir}/target/classes

mvn compile

执行单元测试用例

mvn test

如果只是想编译单元测试用例,生成的class文件默认位置:${basedir}/target/test-classes

mvn test-compile

打包项目

打包文件默认路径:${basedir}/target

mvn package

存放到本地仓库

便于本地其他项目依赖使用

mvn install

上传到远程仓库

共享他人依赖使用

mvn deploy

总结

以上是日常开发中使用最多的Maven命令,使用上很简单,但是隐藏的设计和实现细节可不简单。作为一名有追求的开发者,理应搞清楚其背后的设计和实现原理,才能做到有的放矢,更高效的使用这个工具。

特性

后续讲解

  • 构建生命周期
  • 依赖机制
  • 插件机制
  • 仓库
  • 多模块
  • 配置