美文网首页
Intellij IDEA 安装Maven

Intellij IDEA 安装Maven

作者: TiredHu | 来源:发表于2018-07-30 10:37 被阅读74次

    Maven


    使用maven之前


    在进行讲解前,先提问一个简单的问题。
    假如你正在开发两个Java项目,姑且把它们称为A、B,其中A项目中的一些功能依赖于B项目中的某些类,那么如何维系这种依赖关系的呢?
    笔者在使用Maven前是这样做的,将B项目打包为jar,并在A项目的Library下导入B的jar文件。
    这样做有着很明显的缺点:
    1.如果在开发过程中,发现B中的bug,则必须重新将B打包并对A项目进行重编译操作
    2.在协同开发A项目时,为了保证其能够正常运行,要么选择将B打包入A中,要么选择将B一样发布出去并告知开发者使用方法。显然这两个方法都不太好,前者可能造成资源浪费(比如开发者可能正在开发依赖B的其它项目,B已经存储到本地了),而后者则会为项目正常运行带来风险(一旦把工作交给人工注定会带来一定的失败率)。
    因此,这样手动的控制项目间依赖关系显然是一种‘拙劣’的方法。

    Maven介绍


    Maven的核心功能便是合理叙述项目间的依赖关系。
    所有的Maven项目包含着一个名为pom.xml的文件,在文件中记录着自己的<groupId><artifactId><version>等字段,这些字段在创建Maven项目时填写,Maven会依据它们来定位到该项目。
    在pom中的另一个关键标签是<dependencies>,该标签下可以包含若干个<dependency>标签,而<dependency>下则是上面介绍的<groupId><artifactId><version>等依赖字段,它们确定着一个唯一的项目版本。

    maven pom.xml


    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>lianwei</groupId>
      <artifactId>com.lianwei</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>war</packaging>
    
      <name>com.lianwei Maven Webapp</name>
      <!-- FIXME change it to the project's website -->
      <url>http://www.example.com</url>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    
      <build>
        <finalName>com.lianwei</finalName>
        <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
          <plugins>
            <plugin>
              <artifactId>maven-clean-plugin</artifactId>
              <version>3.0.0</version>
            </plugin>
            <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
            <plugin>
              <artifactId>maven-resources-plugin</artifactId>
              <version>3.0.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.7.0</version>
            </plugin>
            <plugin>
              <artifactId>maven-surefire-plugin</artifactId>
              <version>2.20.1</version>
            </plugin>
            <plugin>
              <artifactId>maven-war-plugin</artifactId>
              <version>3.2.0</version>
            </plugin>
            <plugin>
              <artifactId>maven-install-plugin</artifactId>
              <version>2.5.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-deploy-plugin</artifactId>
              <version>2.8.2</version>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </project>
    

    Maven本地库

    maven会将远程库下载下来的jar包存放在C:\Users\Tired.m2\repository文件夹下(默认)。

    Maven远程库

    http://mvnrepository.com/artifact/mysql/mysql-connector-java

    QQ截图20180730094003.png

    使用Intellij IDEA创建Maven项目

    1 下载Maven压缩包

    下载地址:http://maven.apache.org/download.cgi

    QQ截图20180730095426.png

    下载完成后解压到C:\java_maven文件夹(没有则创建)

    image.png

    配置环境变量

    新增

    变量名:M2_HOME
    变量值:C:\java_maven\apache-maven-3.5.3


    image.png

    编辑

    变量名:path
    变量值:%M2_HOME%\bin;


    image.png

    至此,maven已经安装完成

    image.png

    打开Intellij IDEA,配置maven

    File---Settings---Maven

    image.png

    至此,Maven的安装和配置全部结束。

    接下来,我们创建一个Maven项目

    在Intellij IDEA中:
    File---New ---Project

    image.png
    选择maven,选择则JDK版本,记得勾选Create from archetype,选择maven-archetype -webapp

    next
    GroupId:组织或公司名(随便取,对应pom中的<GroupId>)
    ArtifactId:工程名(当前项目名称,对应pom中的<ArtifactId>)

    image.png
    next
    image.png
    填写完project name后
    next
    image.png
    finish
    image.png

    点击import changes会自动下载maven所需的依赖包,这时要等待下方进度条走完。

    相关文章

      网友评论

          本文标题:Intellij IDEA 安装Maven

          本文链接:https://www.haomeiwen.com/subject/ckyxvftx.html