美文网首页
Java全栈程序员之06:IDEA中MAVEN项目依赖及运行

Java全栈程序员之06:IDEA中MAVEN项目依赖及运行

作者: 码农星球 | 来源:发表于2019-02-26 16:52 被阅读0次

            MAVEN已经成为事实上的企业项目开发中的项目类型。无论是IDEA还是Eclipse,都已经默认支持创建MAVEN项目。严格意义上来说,MAVEN不是一种新的JavaEE项目类型。它凌驾于所以的项目类型上面,是对之前项目的一种“管理”。如果我们创建了MAVEN项目,那么会很方便的干这两件事情:

            1:管理所有的依赖包。其中一个例子是,以往我们要引入一个第三方的jar包,需要把该jar包从网上(或者其它地方)下载回来,然后引入到项目中。而现在,我们只要在pom文件中引入改jar包的标识符,然后maven插件会自动帮我们下载该jar包并引入到项目中来。

            2:方便我们编译、执行、部署项目。

            且看maven项目在IDEA中如何运行。

    1.创建parent项目

            我假设你的项目,不会简单到只有一个Project(在IDEA中更多的称之为Module),所遇,基于一般的做法,我们首先会创建一个父项目。

            该父项目会定义一些通用配置,比如会整个系统所使用的JDK版本,或者引入的通用的jar包的版本。

            选择new project,如下,

            Next,在此页面,定义groupid和标识符和版本号,

            Next,定义项目名,module名。注意,module名很重要,我们定义为:test01.parent,

            接下来,可以enable auto-import,

            Pom文件就是配置文件,是parent中我们唯一需要动的文件,在这个文件中,我们目前要做的就是把项目的JDK版本定义为1.10,如下,

    <?xml version="1.0" encoding="UTF-8"?>

    <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>com.zuikc</groupId>

        <artifactId>test01</artifactId>

        <packaging>pom</packaging>

        <version>1.0.1</version>

        <properties>

            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

            <maven.compiler.encoding>UTF-8</maven.compiler.encoding>

            <java.version>1.10</java.version>

            <maven.compiler.source>1.10</maven.compiler.source>

            <maven.compiler.target>1.10</maven.compiler.target>

        </properties>

    </project>

    2.创建工具项目

            有了parent,让我们创建工具项目吧。

            Next。注意,下图红框中的设置是自动带过来的,一般不需要动。Module的标识取名为test01.common。一般这种项目,在实际的工作中,是用来放置各种工具类的。

            Next,

            Finish之后,可以看到当前module的pom文件中,指定了parent。

            为了演示期间,让我们随便创建一个很简单的工具类吧,这个工具类中,只有一个加法方法。

            如下,

    package com.zuikc.test01.common;

    public class Mather {

        public static final int add(int a, int b){

            return a+b;

        }

    }

    3.创建UI层项目

            接下来,让我们创建UI层。当然,实际工作中,可能你的设计是标准的三层架构,那无非也就是多创建几个module。另外,UI层可能是一个web project,也有可能是像本例一样是个console。那都无所谓,MAVEN项目的一个优点是,你甚至可以随意将一个console项目变成一个web project。

            让我们继续创建UI层,

            Next,

            Next,

            Finish。

            在本项目的pom文件中,我们要设置自己依赖了common,所以,我们要配置下图红框中的内容。

            现在,为了测试期间,让我们创建一个main类,

            代码如下,

    package com.zuikc.test01.ui;

    import com.zuikc.test01.common.Mather;

    public class Sample01 {

        public static void main(String[] args) {

            int re = Mather.add(1,2);

            System.out.println(re);

        }

    }

    4.exec-maven-plugin插件

            要以MAVEN的形式来运行console项目,我们需要添加exec-maven-plugin插件。怎么添加呢?

            很简单的,只要在UI项目的pom中增加如下,

        <build>

            <plugins>

                <plugin>

                    <groupId>org.codehaus.mojo</groupId>

                    <artifactId>exec-maven-plugin</artifactId>

                    <version>1.6.0</version>

                    <executions>

                        <execution>

                            <goals>

                                <goal>exec</goal>

                            </goals>

                        </execution>

                    </executions>

                </plugin>

            </plugins>

        </build>

            看图,

            当保存之后,maven就会从中央仓储(mvnrepository.com)中去下载这个插件(其实主要就是一些jar包)到本地。

    5.配置运行console

            打开配置,

            点击+号,增加一个maven配置,

            像如下进行配置,

            保存后进行run,

            第一次执行,会出现download,

            这些down下来的文件是在哪呢?是在一个叫做maven本地仓储的地方,它默认就是idea安装目录的plugs下,如下所示:

            Ok,回过头来说,如果执行成功就会出现下面的输出。

    6.Maven clean和install

            如果我们run的时候找不到common。就说明我们的common项目还没安装到maven的本地仓储中。那该怎么办呢?当然是install了。

            有两种方式,可以打开maven的操作工作台,如下,

            如图,

            每个项目都有自己的lifecycle,可以在这个工作台中进行clean、编译或者install等。依次,我们install parent、common、ui。成功之后,我们就可以在本地仓储中看到自己编写的项目咯。

            感谢关注“码农星球”。本文版权属于“码农星球”。我们提供咨询和培训服务,关于本文有任何困惑,请关注并联系我们。

    相关文章

      网友评论

          本文标题:Java全栈程序员之06:IDEA中MAVEN项目依赖及运行

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