javaweb学习05:IDEA中Maven的操作


javaweb学习05:IDEA中Maven的操作

  • IDEA中使用Maven:

    • 启动IDEA;

    • 创建一个Maven项目:

    • 新建GAV:

      • GroupId:组

      • ArtifactId:项目名

      • Version:版本(1.0-SNAPSHOT)

    • 选择Maven的地址:

      • maven的地址:maven路径;

      • setting.xml地址:maven的配置文件路径;

      • Local repository:本地仓库路径;

         

    • 等待项目初始化完毕:

      • 自动导入包;

      • BUILD SUCCESS :构建成功;

         

    • 观察Maven仓库中多了什么东西:

       

 



 

  • IDEA中的Maven设置:

    • idea-settings:(注意:IDEA项目创建成功后,看一眼maven的配置)

       

    • 到此,maven项目配置完毕;

    • 注意:这种是maven模板创建的maven项目;

       

 



 

  • 创建一个普通的Maven项目:

    • 普通maven项目:File--new --project ;

       

    • 一个干净的Maven项目创建完成:

      • java:Java源代码;

      • resources:配置文件;

      • test/java:测试使用;

       

 



 

  • 一个Maven模板的web应用项目:

    • 项目结构:

    • main文件夹下新建文件夹:java;

    • main文件夹下新建文件夹:resources;

    • 设置java文件夹为资源文件夹:

      • 右键--Mark Directory as ;

       

 



 

  • IDEA中配置Tomcat:

    • 步骤1:

    • 步骤2:点击” + “,选中tomcat:

    • 步骤3:

       

    • 步骤4:为什么会有警告问题:

      • 我们访问一个网站,需要指定一个文件夹的名字;(必须要做的配置)

         

    • 步骤5:启动Tomcat;

       

       



 

  • Maven侧边栏的使用:

    • 三大块:

      • Lifecycle:Maven的命令行操作;

        • clean:清理;(清理项目结构中的target文件夹)

        • validate:验证;

        • complie:编译

        • test:测试

        • package:打包

        • verify:

        • install:安装

        • site:

        • deploy:部署

      • Plugins:Maven的插件(甚至可以删掉)

        • 跟上面命令行的功能一样;

      • Dependencies:项目依赖

        • 一个个的jar包;

       

 



 

  • pom文件:

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

      <?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.0modelVersion>
      ?
       
       <groupId>com.ljxdemogroupId>
       <artifactId>javaweb-01-mavenartifactId>
       <version>1.0-SNAPSHOTversion>
       
       <packaging>warpackaging>
      ?
       
       <properties>
         
         <project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
         
         <maven.compiler.source>1.8maven.compiler.source>
         <maven.compiler.target>1.8maven.compiler.target>
       properties>
      ?
       
       <dependencies>
         
         <dependency>
           <groupId>junitgroupId>
           <artifactId>junitartifactId>
           <version>4.11version>
         dependency>
       dependencies>
      ?
       
       <build>
         <finalName>javaweb-01-mavenfinalName>
         <pluginManagement>
           <plugins>
             <plugin>
               <artifactId>maven-clean-pluginartifactId>
               <version>3.1.0version>
             plugin>
             
             <plugin>
               <artifactId>maven-resources-pluginartifactId>
               <version>3.0.2version>
             plugin>
             <plugin>
               <artifactId>maven-compiler-pluginartifactId>
               <version>3.8.0version>
             plugin>
             <plugin>
               <artifactId>maven-surefire-pluginartifactId>
               <version>2.22.1version>
             plugin>
             <plugin>
               <artifactId>maven-war-pluginartifactId>
               <version>3.2.2version>
             plugin>
             <plugin>
               <artifactId>maven-install-pluginartifactId>
               <version>2.5.2version>
             plugin>
             <plugin>
               <artifactId>maven-deploy-pluginartifactId>
               <version>2.8.2version>
             plugin>
           plugins>
         pluginManagement>
       build>
      project>
    • Maven高级之处:

      • 添加依赖后,自动导jar包;

      • Maven的高级之处:他会帮你导入这个jar包所依赖的其他jar包;

      <?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.0modelVersion>
      ?
         <groupId>com.ljxdemogroupId>
         <artifactId>javaweb-01-maven02artifactId>
         <version>1.0-SNAPSHOTversion>
      ?
         <dependencies>
             <dependency>
                 <groupId>junitgroupId>
                 <artifactId>junitartifactId>
                 <version>4.11version>
             dependency>
      ?
             
             <dependency>
                 <groupId>springgroupId>
                 <artifactId>spring-webartifactId>
                 <version>1.0.2version>
             dependency>
      ?
         dependencies>
      ?
      project>

     

    • Maven由于他的约定大于配置:

      • 我们之后可能遇到我们写的配置文件,无法被导出或者生效的问题;

      • 解决方案:配置resouces节点;


           <build>
               <resources>
                   <resource>
                       <directory>src/main/resourcesdirectory>
                       <excludes>
                           <exclude>**/*.propertiesexclude>
                           <exclude>**/*.xmlexclude>
                       excludes>
                       <filtering>falsefiltering>
                   resource>
                   <resource>
                       <directory>src/main/javadirectory>
                       <includes>
                           <include>**/*.propertiesinclude>
                           <include>**/*.xmlinclude>
                       includes>
                       <filtering>falsefiltering>
                   resource>
               resources>
           build>