[Herramienta de gestión de proyectos] maven entrada rápida

Experto

1. apache fondo

1. apache----Fundación de software

Software de código abierto: Dubbo, Log4j, Maven, RocketMq, Tomcat…

2. El origen del nombre

El nombre de la tribu india
un servidor irregular ---- servicio de parches

3. La forma de actualizar el proyecto en apache.

Etapas de Preparación, Incubación, Graduación

2. Conociendo a Maven por primera vez

1. El concepto de Maven

maven es una herramienta de compilación automatizada

  • Build: es el proceso de implementar los resultados de la compilación del proyecto en el servidor
  • Compilar: el archivo .java se compila en un archivo de código de bytes .class a través del compilador javac

2. La forma tradicional

Utilice el paquete jar
para descargarlo; colóquelo en el directorio lib; si se hace referencia a otros archivos jar, continúe con la descarga . La
versión del paquete jar es inconsistente/debe actualizarse, el paquete jar se actualiza.

3. Pequeño conocimiento

Escuché que muchas personas mayores llaman a Maven "Ma Wen"
, de hecho, deberían leer "Mei Wen".

3. Experto avanzado

1. Almacén

Hay un concepto de almacén, gestión unificada de paquetes de tarros, y cada tarro usa coordenadas para corresponder a la ubicación.
Para un paquete jar, la carpeta + nombre + número de versión puede ubicar un jar único.

Almacén local (carpeta en esta máquina) -> almacén central (proporcionado por maven) -> almacén remoto (servidor privado)

¿Se puede encontrar el paquete de jar en el almacén local?Si el jar no existe, vaya al almacén remoto para encontrarlo, y si el remoto no existe, vaya al almacén central para encontrarlo.
Si no se encuentra, se informará de un error.
Puede reutilizar paquetes jar y múltiples proyectos comparten paquetes jar.

2. Proyecto Maven

Cree rápidamente un proyecto Maven para JavaWeb

  • Elija crear un nuevo proyecto

inserte la descripción de la imagen aquí

  • Seleccione maven de la barra de funciones izquierda
  • SDK elige su propia versión jdk
  • Marque Crear plantilla y seleccione maven-archetype-webapp
  • próximo

inserte la descripción de la imagen aquí

  • Rellene la versión de ID de artefacto de groupId (tres elementos de coordenadas)

groupId representa el canal de origen del jar, correspondiente al nombre de la carpeta
com.uncle

artefactoId representa el nombre único del proyecto csdn-maven-test.jar
versión representa el número de versión 1.0 2.0 ...
-SNAPSHOT (versión de instantánea, inestable) -RELEASE
(versión de lanzamiento, estable)

inserte la descripción de la imagen aquí

  • Configura tu propio Maven (el paso más importante)

Elija el Maven
que descargó y elija el Maven que descargó y configuró – config – settings.xml
next

inserte la descripción de la imagen aquí

  • ¿Aparece el mensaje para importar automáticamente el paquete después de crear el proyecto?

Seleccione importación automática: habilite la importación automática
o haga clic con el botón derecho en el archivo pom.xml y seleccione Reimportar para importar manualmente

! ¡La nueva versión de IDEA no puede configurar la importación automática!

  • El proyecto maven tiene una estructura de directorio acordada

La idea de diseño "la convención es mejor que la configuración" es una norma unificada

El directorio de código src
se divide en principal (código principal y recursos) y prueba (código de prueba y recursos),
donde principal contiene las carpetas java (almacenamiento de código) y recursos (almacenamiento de recursos).

El archivo de configuración principal de pom.xml mvn
debe tener tres elementos de coordenadas correspondientes al proyecto después de empaquetarlo (completado cuando se crea el proyecto)

inserte la descripción de la imagen aquí

3, descarga y configuración maven

Dirección del sitio web oficial: https://maven.apache.org/download.cgiDownload
apache-maven-3.6.3-bin.zip

settings.xml es el archivo de configuración del propio software maven

1) Descomprimir -> almacenar en la ruta en inglés -> ingresar a la carpeta bin
-> copiar la ruta para configurar las variables de entorno (clic derecho en mi computadora)

2) Verificar -> Símbolo del sistema -> Ingrese mvn -v (verifique el número de versión)

3) Asociar idea -> Archivo -> configuración
-> buscar maven
-> cambiar el directorio de inicio de maven al directorio de maven que descargó
-> establecer settings.xml y el almacén local 4) Establecer settings.xml en el directorio conf
a) Cambiar local El la configuración del repositorio es
C:\Users${username}.m2\repository
b) Es mejor descargar paquetes jar desde el repositorio central a través de la creación de reflejos.
Por lo general, se utiliza el espejo proporcionado por Alibaba Cloud https://yq.aliyun .com/artículos/ 703623

  <mirror>
   	<id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>        
  </mirror>

c) Copie la dirección anterior en la pestaña del archivo de configuración

5) Busque el archivo que acaba de configurar en la opción de archivo de configuración de usuario de idea.

6) Si ocurre un error, verifique el registro de errores, Ayuda -> mostrar registro en el explorador

Si el error es
ERROR - #org.jetbrains.idea.maven - com.google.inject.CreationException: No se puede crear el inyector, vea
los siguientes errores
es un problema de incompatibilidad de versión Cambie a la versión 3.6.1

4. Dependencias de Maven

存放到<dependencies>标签下
   1)查找依赖坐标,通过https://mvnrepository.com网站找到       
   2)以引用guava为例(google提供的使用最广泛的jar)
    <dependencies>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>28.1-jre</version>
        </dependency>
    </dependencies>
   3) 依赖有递进关系 
      当引入依赖时,默认引入它依赖的其他jar。
      项目A -> jar包B -> 相当于引入了jar包C 
   4)剔除依赖的方式
      使用<exclusions>标签, 以findbugs为例
      <exclusions>
        <exclusion>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
        </exclusion>
      </exclusions> 
   5)依赖使用的范围
        构建包含的流程:编译、测试、运行、打包、安装、部署
                     compile test  package install deploy
        在右侧 maven projects标签栏中 打开项目名下面的lifecycle
        如果没有 去View - Tool windows中查找

      	使用<scope>标签 放在artifactId下面
        compile缺省值  伴随着项目的整个生命周期而存在。
        provided已提供的  不需要将此依赖打包到项目最终的jar包里。
        runtime运行时使用  
          比如<scope>runtime</scope>
        test 测试时使用
        system 自定义jar包位置 (不推荐)  

5. El ciclo de vida de Maven

clean validate compile test package verify install site deploy
  1) clean 项目清理
  2) validate 校验项目的可用性
  3) compile 编译
  4) test 执行单元测试
  5) package 打包
  6) verify 校验测试结果
  7) install 安装
  8) site 网站站点文件的创建(用的非常少)
  9) deploy 部署
命令效果:
  1) compile 编译
       注意点1:再次验证mvn -v里面的java运行目录,是否是jdk所在目录
              如果不是,说明环境变量缺少JAVA_HOME的配置
       注意点2:编译时需要指定jdk的版本
              maven提供对全局jdk的配置(settings文件中<profiles>标签下)

    <profile>  
        <id>jdk-1.8</id>  
        <activation>  
            <activeByDefault>true</activeByDefault>  
            <jdk>1.8</jdk>  
        </activation>  
        <properties>    
            <maven.compiler.source>1.8</maven.compiler.source>    
            <maven.compiler.target>1.8</maven.compiler.target>    
            <maven.compiler.compilerVersion>1.8
            </maven.compiler.compilerVersion>    
       </properties>  
    </profile>    

    正式编译mvn clean compile
    编译结果出现在根目录下的target文件夹中

    执行打包 mvn clean package
    打包结果,出现了项目的jar包

    执行安装 mvn clean install (打包文件存储到本地仓库中)
    本地仓库中出现对应的文件夹和jar

    执行部署 mvn clean deploy
    首先要配置远程仓库的地址,然后将打包文件上传到远程仓库中

   2) 跳过测试阶段
     方式一: mvn package -DskipTests 虽然跳过单元测试的执行,但仍然会编译代码,不是很推荐使用
     方式二: mvn package -Dmaven.test.skip=true (最最常用的命令之一)既不会执行测试代码也不会编译。

   3) 查看依赖树
      方式一:pom.xml文件中右键 -> diagrams -> show dependencies 
      方式二:mvn dependency:tree
          功能: 更好的解决jar包冲突问题  

Supongo que te gusta

Origin blog.csdn.net/CSDN_SAVIOR/article/details/122912875
Recomendado
Clasificación