Java基础之Maven详解

一、Maven环境的搭建

1. 为什么要学习Maven?

2.  Maven项目架构管理工具

3.  下载安装Maven

下载完成后解压

4.  配置环境变量

在我们的系统环境变量中

配置如下配置:

- M2_HOME maven目录下的bin目录

- MAVEN_HOME maven的目录

- 在系统的path中配置 %MAVEN_HOME%\bin

测试Maven是否安装完毕,必须保证配置完成

5. 阿里云镜像配置

<mirror>
   <id>nexus-aliyun</id>
   <mirrorOf>*</mirrorOf>
   <name>Nexus aliyun</name>
   <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

6. 本地仓库

在本地的仓库和远程仓库

建立一个本地仓库: localRepository

<localRepository>E:\Environment\apache-maven-3.8.1\maven-repo</localRepository>

二、IDEA中Maven的操作

1. 启动IDEA

2. 创建一个Maven项目



3. 等待项目初始化完毕

4. 观察Maven仓库中出现的东西

5. IDEA中Maven设置


6. 创建maven项目


这个只有在Web应用下才有

7. IDEA中标记文件夹功能

方法一:

方法二:


8. 在IDEA中配置Tomcat

点击IDEA工具栏run->Edit Configurations按步



解决警告问题:

必须要的配置:产生问题的原因:我们访问一个网站,需要制定一个文件夹名字




9. pom文件

pom.xml 是Maven的核心配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!--Maven版本和头文件-->
<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>
<!-- 这里就是我们刚才配置的GAV -->
  <groupId>com.kuang</groupId>
  <artifactId>javaweb-01-maven</artifactId>
  <version>1.0-SNAPSHOT</version>
<!-- Package:项目的打包方式
jar:java应用
war:JavaWeb应用
-->
  <packaging>war</packaging>

<!--配置-->
  <properties>
<!--  项目的默认构建编码  -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!--  编码版本  -->
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

<!--项目依赖-->
  <dependencies>
<!--  具体依赖的jar包配置文件  -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

<!-- 项目构建用的东西 -->
  <build>
    <finalName>javaweb-01-maven</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.1.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.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.2.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>
      </plugins>
    </pluginManagement>
  </build>
</project>

Maven由于它的约定大于配置,我们之后可能遇到我们缩写的配置文件,无法被导出或者生效的问题,

解决方案:

<!--  在build中配置resources,来防止我们资源导出失败的问题  -->
    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <excludes>
                    <exclude>**/*.properties</exclude>
                    <exclude>**/*.xml</exclude>
                </excludes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

三、解决一些问题和初步了解Servlet

到此这篇关于Java基础之Maven详解的文章就介绍到这了,更多相关Java Maven详解内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • java 中maven pom.xml文件教程详解

    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/maven-v4_0_0.x

  • Java项目打包发布到maven私仓常见的几种方式

    前言 在早期没有使用maven之前,我们引用一些公有jar或者api jar,我们可能会采用这样的方式,通过手动导入这些jar到项目的classpath路径进行引用. 有了maven后,我们公司内部可能就会搭建maven私仓比如nexus,然后把这些公有jar或者api jar上传到nexus私仓,在pom.xml配置一下这些jar的坐标就可以引用. 今天我们的话题就是来聊聊项目打包发布到maven私仓常见的几种方式 发布到maven私仓的步骤 1.在maven的settings.xml中< s

  • 使用maven构建java9 service实例详解

    序 本文主要研究下如何在maven里头构建java9 multi module及service实例 maven 整个工程跟传统maven多module的工程结构一样,java9的一个module对应maven project的一个module.下面是根目录下的pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4

  • 解决IDEA2020 创建maven项目没有src/main/java目录和webapp目录问题

    参考链接 IDEA 2020.2.3版本 IntelliJ IDEA 2020.2.3永久激活码(亲测有效) IDEA 2019.3版本 IntelliJ IDEA 2020最新激活码(亲测有效,可激活至 2089 年) IntelliJ IDEA 2018.3.3版本 最新idea2020注册码永久激活(激活到2100年) 问题描述 在IDEA中创建maven项目时,发现没有src/main/java目录和webapp目录 问题解决 红色框里一开始是默认的maven地址,如果本身默认地址里并没

  • Maven在Java8下如何忽略Javadoc的编译错误详解

    JavaDoc简介And基础知识 (一) Java注释类型 //用于单行注释. /*...*/用于多行注释,从/*开始,到*/结束,不能嵌套. /**...*/则是为支持jdk工具javadoc.exe而特有的注释语句. 说明:javadoc 工具能从java源文件中读取第三种注释,并能识别注释中用@标识的一些特殊变量(见表),制作成Html格式的类说明文档.javadoc不但能对一个 java源文件生成注释文档,而且能对目录和包生成交叉链接的html格式的类说明文档,十分方便. (二)Java

  • 解决java maven项目找不到jconsole-1.8.0.jar和tools-1.8.0.jar包问题

    今天遇到了这样一种情况,自己的maven项目中并没有引用的jar包出现在了Maven Dependencies的依赖包中.而我在pom.xml自己没有没有引入啊. 图示 怀疑是自己的alibaba 的druid所依赖的包: <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.14</version>

  • 基于Maven骨架创建JavaWeb项目过程解析

    IDEA版本:2020.1 骨架选项名称: org.apache.maven.archetypes:maven-archetype-webapp 本项目的Maven坐标设置: 设置优先从本地获取骨架: archetypeCatalog=internal 构建过程的控制台打印: "C:\Program Files\Java\jdk1.8.0_251\bin\java.exe" -Dmaven.multiModuleProjectDirectory=C:\Users\User-Dai\Ap

  • Java程序测试上传Maven工程代码示例解析

    创建普通Maven工程 导入所需依赖坐标: <dependencies> <!-- https://mvnrepository.com/artifact/net.oschina.zcx7878/fastdfs-client-java --> <dependency> <groupId>net.oschina.zcx7878</groupId> <artifactId>fastdfs-client-java</artifactId

  • java如何使用自己的maven本地仓库详解

    本地仓库 主要是一种缓存,当你使用远程仓库中下载组件后,它下一次会优先从本地进行加载,一般位于USER_HOME/.m2目录下,我们自己也可以建立公用的包,把包发布到本地仓库,自己在其它项目里直接可以用,当然如果希望在任务地方都使用自己的包,需要把它发布到远程仓库中. 像nuget,npm一样maven也是仓库 Jar的maven配置 <dependency> <groupId>javalindday</groupId> <artifactId>jpaDem

  • Java如何通过Maven管理项目依赖

    项目的依赖 Java最大的一个优势之一应该是整个生态中无数的框架和API,我们创建实际的项目不可避免的都需要用到这些框架和API,而它们通常都是以JAR包的形式提供.我们之前在编译项目的时候,需要在classpath上存放依赖的JAR包.而且这些外部的JAR包还会有其他依赖.我们需要递归地一个个去下载所有这些外部依赖,并且要确保下载的版本都是正确的,当项目越来越复杂的时候,这是极其麻烦的事情,比如碰到JAR Hell的问题. Maven现在来拯救我们了,Maven可以自动帮我们做依赖管理,我们需

  • Java使用Maven BOM统一管理版本号的实现

    一个中大型的 Java 项目往往包含若干 JAR 包,这些 JAR 包有着不同的版本号.如果这些 JAR 包单独发布,然后直接通过版本号引用相应的 JAR 包,不同版本的兼容性维护将变得十分麻烦.为了解决这个问题,可以让一个特殊的模块引用这些 JAR 包,将版本号定义在这个模块中,模块中的 JAR 都是兼容的,对外发布时只发布这个特殊模块.这个特殊模块就是 BOM(Bill Of Materials). 著名的 Spring Boot 就使用了这种方式来管理版本号,这个模块就是 spring-b

随机推荐