Con respecto al tema prioritario de que maven lea el archivo settings.xml

Hoy configuré el archivo settings_a.xml en la ruta .m2 señalada por la ruta del archivo settings.xml de maven en IDEA y, al mismo tiempo, mi maven3.6.3 también está colocado en .m2.

[1] carpeta .m2

[2] carpeta apache-maven-3.6.3

Luego, al empaquetar y publicar en IDEA, descubrí que el archivo settings_a.xml especificado no se podía leer sin importar nada. El settings_a.xml señalado en esta IDEA no tiene efecto y las dependencias no se pueden cargar en el almacén especificado.

Esto debería ser un problema con la prioridad de maven al cargar el archivo settings.xml. Vaya al sitio web oficial de maven y obtenga una introducción detallada. .

[3] Sitio web oficial sobre la prioridad de lectura del archivo settings.xml

El sitio web oficial de Maven presenta la prioridad de Maven al cargar el archivo settings.xml:

traducir:

Vista rápida

Los elementos del archivo contienen elementos que se utilizan para definir valores que configuran la ejecución de Maven de varias maneras, como , pero no deben vincularse a ningún proyecto específico ni distribuirse a una audiencia. Estos valores incluyen la ubicación del repositorio local, el servidor del repositorio remoto alternativo y la información de autenticación.settingssettings.xmlpom.xml

Los archivos pueden ubicarse en dos ubicaciones:settings.xml

  • Instalación de Maven:${maven.home}/conf/settings.xml

  • Instalación de usuario:${user.home}/.m2/settings.xml

La primera también se denomina configuración global y la segunda se denomina configuración de usuario. Si ambos archivos existen, sus contenidos se fusionan y el específico del usuario es dominante.settings.xmlsettings.xmlsettings.xml

Consejo: si necesita crear configuraciones específicas de usuario desde cero, la forma más sencilla es copiar la configuración global de la instalación de Maven a un directorio. El valor predeterminado de Maven es una plantilla con comentarios y ejemplos para que pueda ajustarla rápidamente según sus necesidades.${user.home}/.m2settings.xml

A continuación se ofrece una descripción general de los elementos principales:settings

<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 https://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository/>
  <interactiveMode/>
  <offline/>
  <pluginGroups/>
  <servers/>
  <mirrors/>
  <proxies/>
  <profiles/>
  <activeProfiles/>
</settings>

Se pueden utilizar las siguientes expresiones:settings.xml

  1. ${user.home}y todas las demás propiedades del sistema (a partir de Maven 3.0)

  2. ${env.HOME}etc. para variables de entorno

Tenga en cuenta que las propiedades definidas en el archivo de configuración no se pueden utilizar para la interpolación.settings.xml

Aproximadamente significa:

settings.xml puede existir en dos carpetas:

  1.  Directorio de instalación de Maven: ${M2_HOME}/conf/settings.xml

  2.  Directorio .m2 del usuario: ${user.home}/.m2/settings.xml

1 es la configuración global y 2 es la configuración del usuario. Si ambos existen, sus contenidos se fusionarán y el archivo settings.xml del directorio de usuarios tendrá prioridad.

La prioridad de carga de settings.xml es la siguiente:

  1. Lea settings.xml del directorio ${user.home}/.m2

  2. Cuando settings.xml no existe en el directorio ${user.home}/.m2, se leerá desde el directorio {M2_HOME}/conf.

  3. Desarrollar settings.xml especificados manualmente en la interfaz de la idea

[4] Solución al error al leer el archivo settings.xml especificado

Método 1: cambie el nombre del archivo settings_a.xml en .m2 al archivo settings.xml y publique el paquete jar correctamente (pero si continúa usando la configuración de ruta .m2/setting_a.xml en IDEA, la configuración no se ejecutará). efecto y no se puede encontrar el archivo).

Método 2: deje el nombre del archivo settings_a.xml en .m2 sin cambios, elimine directamente el archivo settings.xml en el directorio conf de maven3.6.3 y la liberación se realizará correctamente.

Método 3: elimine el archivo settings_a.xml en .m2, modifique el archivo a settings.xml y colóquelo en el directorio conf de maven3.6.3. Aunque el jar se puede publicar con éxito, el .m2/setting_a.xml configurado en IDEA Si la configuración de la ruta no tiene efecto, utilice el archivo settings.xml en la variable del sistema.

Por lo tanto, para ser violento, elimine el archivo de configuración en .m2 directamente, y el entorno y las herramientas IDEA utilizarán la configuración en el directorio conf de maven3.6.3.

Hecho

Supongo que te gusta

Origin blog.csdn.net/qq_27706119/article/details/134341999
Recomendado
Clasificación