Java--IDEA设置Maven,创建Maven工程

Posted MinggeQingchun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java--IDEA设置Maven,创建Maven工程相关的知识,希望对你有一定的参考价值。

一、IDEA设置maven安装主目录,setting.xml文件和本地仓库位置

IDEA中内置了maven ,一般不使用内置的, 用内置修改maven的设置不方便

需要IDEA指定maven安装位置等,使用自己安装的maven, 需要覆盖IDEA中默认设置

1、设置maven安装主目录,setting.xml文件和本地仓库位置

(1)设置本机存放资源的目录位置(设置本机仓库)

默认仓库(本机仓库)存放位置:

C:\\Users\\(登录操作系统的用户名)Administrator\\.m2\\repository

可以将其复制到设定的目标路径,如将其复制到如下路径

D:\\XXXX\\maven-work\\repository (个人计算机存放位置)

(2)修改maven的配置文件, maven安装目录\\conf\\settings.xml(如:D:\\XXXX\\apache-maven-3.6.3\\conf\\settings.xml (个人计算机存放位置)),先备份 settings.xml

(3)编辑settings.xml文件,修改 <localRepository>  指定你的目录(不要使用中文目录)

        D:\\XXXX\\maven-work\\repository (个人计算机存放位置)

打开settings.xml文件,发现原始配置如下,在53行

  我们将<localRepository>标签拷贝出来,将标签中的路径修改为自己从默认C盘中拷贝出来的repository文件夹

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: $user.home/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
 
  <localRepository>D:\\JDK\\maven-work\\repository</localRepository>

2、配置当前工程的设置

【1】File----Settings----Build, Execution,Deployment----Build Tools----Maven 

Maven Home directory:        maven的安装目录

User Settings File :               maven安装目录conf/setting.xml配置文件

Local Repository :                本机仓库的目录位置

如果在maven安装路径下的conf文件下的setting.xml文件中修改了,修改了User settings file的路径之后,勾选 Override,会自动带出Local repository的文件路径

修改完成之后,点击“Apply”,再点击“OK”即可

【2】File----Settings----Build, Execution,Deployment----Build Tools----Maven----Runner

VM Options:-DarchetypeCatalog=internal
JRE: 你项目的jdk 

archetypeCatalog用来指定maven-archetype-plugin读取archetype-catalog.xml文件的位置:

internal——maven-archetype-plugin内置的

local——本地的,位置为~/.m2/archetype-catalog.xml

remote——指向Maven中央仓库的Catalog

IDEA根据maven archetype的本质,其实是执行mvn archetype:generate命令,该命令执行时,需要指定一个archetype-catalog.xml文件。

该命令的参数-DarchetypeCatalog,可选值为:remote,internal  ,local等,用来指定archetype-catalog.xml文件从哪里获取。

默认为remote,即从 http://repo1.maven.org/maven2/archetype-catalog.xml路径下载archetype-catalog.xml文件。

http://repo1.maven.org/maven2/archetype-catalog.xml 文件约为3-4M,下载速度很慢,导致创建过程卡住

使用-DarchetypeCatalog=internal,不用下载, 创建maven项目速度快

修改完成之后,点击“Apply”,再点击“OK”即可

3、配置新建工程设置

IDEA新版 File----New Projects Settings----Settings for New Projects...

IDEA老版 File----Other Settings----Settings for New Projects...

配置操作同上

二、IDAE创建Maven的Java和Web工程

1、创建maven的Java工程

【1】首先,我们可以创建一个Empty Project;File----New----Project...

【2】新建一个模块;File----New----Module...

maven-archetype-quickstart : 普通java项目(可选可不选,不选默认是普通Java工程)

Archetype是Maven工程的模板工具包。一个Archetype定义了要做的相同类型事情的初始样式或模型。这个名称给我们提供来了一个一致的生成Maven工程的方式。Archetype会帮助作者给用户创建Maven工程模板,并给用户提供生成相关工程模板版本的参数化方法

 【3】填写工程名,存放位置,公司组织域名倒写,gav等信息

 【4】下一步,还可确认maven设置,工程设置等

 第一次创建maven工程,会自动下载插件,在右下方可以看到下载进度条

【5】 下载完成之后,控制台会显示 Build Success;就会生成如下目录结构,有些版本的IDEA不同,生成目录结构也不同

新版IDEA中还会有一个附送的App.java类和AppTest.java类

 pom.xml文件内容如下

可以看到坐标(gav),依赖,以及自带的编译,测试等插件信息

<?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.mycompay</groupId>
  <artifactId>maven-javase</artifactId>
  <version>1.0</version>

  <name>maven-javase</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>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle -->
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging -->
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-jar-plugin</artifactId>
          <version>3.0.2</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>
        <!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle -->
        <plugin>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.7.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-project-info-reports-plugin</artifactId>
          <version>3.0.0</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

点击右方Maven,可以看到如下结构

maven生命周期,maven的插件,以及依赖

 【6】新版没有resources文件夹,自己创建resources文件夹,将其标记为main或者 test下的资源文件夹根目录

 设置好目录之后,会发现文件夹的标记都不同

执行compile命令之后,生成了target目录

2、IDEA创建maven的web工程

maven-archetype-webapp : web工程

【1】同上,先创建一个Empty Project;File----New----Project...

【2】新建一个模块;File----New----Module...

【3】填写工程名,存放位置,公司组织域名倒写,坐标(gav)等信息

【4】下一步,还可确认maven设置,工程设置等

 【5】目录结构如下,缺省main/java,main/resources;test,test/java,test/resources目录,并将对应目录进行标记

3、IDEA导入maven工程(module)

【1】同上,先创建一个Empty Project;File----New----Project...

【2】File----Project Structure----Module----点击 “+” 加号

 【3】选择Import Module

【4】选择需要导入的工程

【5】选择导入方式

以上是关于Java--IDEA设置Maven,创建Maven工程的主要内容,如果未能解决你的问题,请参考以下文章

我的java idea xml文件怎么回复原样

JAVA IDEA切换新机器配置环境一览

java idea导入ecli项目

Java IDEA maven包拉下来,运行没有问题,在External Libraies能找到,但是运行的时候Import是灰色,也就是import的时候找不到包

Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ⑦ ( 登录 Maven 私服 | Maven 私服初始化设置 | 创建 Maven 仓库 )

04_项目一众筹00_04Maven配置工作空间环境STS创建第二个Maven项目,演示依赖一个新的工作空间环境标准设置