zoukankan      html  css  js  c++  java
  • maven项目整合工具学习

    写在前面

    在以往开发软件的过程中,每次我都要把jar包拷贝一遍,十分麻烦。在学习了SSM框架后意外发现了maven这个整合工具。随后迅速对其特性进行了一波学习。maven最大的特点就是通过坐标来管理jar包,并且可以自动从中央仓库或者远程仓库下载,且不需要每个软件都拷贝一遍jar包,使用起来十分方便。

    maven的基本使用

    要使用maven非常简单,我们使用idea编译器,就可以创建一个maven工程了。

    maven工程的项目结构


    如上图,是一个maven工程的项目结构。我们一项一项来看

      1. .idea是IDE为我们创建的,不用管。
    • 2.src就是我们存放代码和配置文件的地方了。
    • 3.target存放着我们编译后的classes等等.
      1. .iml结尾的文件是用来标识这是一个idea项目,不用管。
      1. pom.xml,maven的配置文件,用来配置maven工程的各项参数

    重点内容

    加粗的就是我们在开发中要重点使用的内容了,src下在分为main和test,分别存放普通代码和测试代码。main下有
    java即是java源文件 resources即为配置文件。test下的目录同结构。

    配置文件常用的标签

    打开pom.xml,我们首先可以看到:

    其中groupId artifactId 都是我们自己定义的项目对应唯一标识。version中的SNAPSHOT指的是测试版,packaging指的是打包方式,这里默认是war包。
    我们要导入jar包的话很简单,如下:

        <dependencies>
            <!-- spring -->
            <dependency>
                <groupId>org.aspectj</groupId>
                <artifactId>aspectjweaver</artifactId>
                <version>1.6.8</version>
            </dependency>
          </dependencies>
    

    这里是一个示例,关于maven工程的jar包坐标百度都可以搜到。只要复制粘贴过来就可以在本地的项目使用了。其他还有很多用法,在开发中慢慢实践吧。

    maven工程的生命周期

    maven工程有两个常用生命周期,分别是默认生命周期,清理生命周期。我们可以使用idea看到:

    众所周知lifecycle就是生命周期的意思。其中compile test install package deploy为默认声明周期,执行五个中靠后的会执行前面所有的命令,如执行install则会自动执行compile和test命令。而清理生命周期则为clean命令。

    使用maven工程构建父子工程

    其实maven还有一个更加强大的功能,我们可以构建子工程。子工程可以使用父工程的所有jar包。这样分工程的好处就是可以有效避免重复代码。虽然我现在的阶段暂时用不到,但还是要看一下的。
    要创建也很简单,首先建立一个project或module,这里我们选择project。然后在project上右键建立module
    父子工程项目结构

    非常容易地我们就建好了一个父子工程。我们把web项目的三层架构分成了三个module,但其实每个module之间是有依赖的。比如service依赖于dao。那我们如何使用呢,只要在配置文件中像配置jar包一样配置即可:

    再进行一些简易的配置文件的设置,项目就可以跑起来了。

    私服(远程仓库)

    这块的内容目前用不到,就不展开说了

    总结

    学习了maven项目的使用后,对于项目的管理来说变的方便了许多。以后写web尽量会更多地使用maven和SSM来写,增加熟练度。

  • 相关阅读:
    Vue GET xxxx/sockjs-node/info?t=1573626343344 net::ERR_CONNECTION
    NavigationDuplicated Navigating to current location (“/XXX”) is not allowed
    node-sass报错(Node Sass could not find a binding for your current environment)
    DeprecationWarning: collection.ensureIndex is deprecated. Use createIndexes instead
    VSCODE 中.art文件识别为html文件
    gulp4.0构建任务
    gulp报错The following tasks did not complete
    setTimeout()
    格式化日期
    作业1.3
  • 原文地址:https://www.cnblogs.com/wushenjiang/p/12919490.html
Copyright © 2011-2022 走看看