He instalado una última maven-3.0.4
en Windows 7 :
los detalles de instalación son los siguientes:
Ruta de instalación:
C:\apache-maven-3.0.4
Las variables de entorno son:
M2_HOME C:\apache-maven-3.0.4\apache-maven\src
JAVA_HOME C:\Program Files\Java\jdk-1.7.0_04
Las variables de ruta agregadas son:
%M2_HOME%\bin;%JAVA_HOME%\bin;
En la ventana de comandos lo muestra así:
C:\>java -version
java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b22)
Java HotSpot(TM) Client VM (build 23.0-b21, mixed mode, sharing)
C:\>mvn -version
Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher
Esta es la única versión en Maven instalada en mi PC y la solución dada en muchos blogs que se refiere a la eliminación de la M2_HOME
variable de entorno anterior no es válida.
He leído y probado todas las soluciones dadas en blogs como:
pero aún no puede llegar a eso. ¿Qué podría estar perdiendo en todo esto? Gracias por adelantado.
zip
y estaba roto. Reemplazado.tar.gz
y funciona. Entonces, cuandoM2_HOME
esté configurado correctamente, realmente intente verificar que lo que descargó sea correcto.Respuestas:
Llegué a este problema también, y encontré esto artículo. Para Maven3, cambiar el nombre de la variable de entorno de M2_HOME a M3_HOME fue el truco. Estoy en una Mac con OSX 10.9 con JDK 1.7. Espero que esto ayude.
Nota: elimine M2_HOME, si ya está configurado. P.ej:
unset M2_HOME
fuente
unset M2_HOME
.A pesar de que se responde la pregunta, me gustaría agregar que, si obtiene el error mencionado anteriormente, asegúrese de haber descargado el archivo binario .
El archivo fuente solo debe descargarse si es un usuario avanzado y sabe cómo tratarlo.
He tenido una gran cantidad de personas descargando el archivo incorrecto, seniors y juniors
fuente
Estaba teniendo este mismo problema y pude resolverlo rehaciendo cuidadosamente las Variables de entorno:
Además, las hice todas las variables del sistema , no las variables de usuario como dicen las instrucciones de Maven. Cuando usted
Asegúrese de que puede ver las variables% M2% y% JAVA_HOME% completamente expandidas, es decir:
fuente
M2
usa la variable de entorno? Solo tengoJAVA_HOME
yM2_HOME
.M2
la variable de entorno a veces se usa para indicar la%M2_HOME\bin%
ruta, que a su vez se agrega a la%Path%
variable de entorno. Esto es necesario cuando el archivo por lotes de Mavenmvn.bat
no se puede encontrar en las%Path%
entradas estándar definidas. Un caso de uso típico sería un directorio de instalación no estándar para Maven.Tuve este problema en dos instalaciones diferentes de Ubuntu 12.04, a pesar de las instalaciones realizadas por apt-get. El problema fue M2_HOME.
Solucionado con:
fuente
export M2_HOME=/usr/share/maven
. Como señaló @jimkont, a veces es maven2 o maven3 (si instaló maven3, por supuesto).Creo que este error se debió a la descarga de SRC en lugar de BINARY del sitio de Maven. Asegúrate de descargar Binary zip.
Debido a la ruta a continuación, obtendrá solo cuando descargue SRC:
fuente
Parece que instaló (extrajo) los archivos de origen en lugar de los archivos binarios en función de la información de su ruta. Intente instalar los binarios en su lugar y siga la respuesta de los otros carteles.
fuente
Bueno, tuve este problema y después de ver esta publicación y particularmente la respuesta de khmarbaise, noté que
M2_HOME
eray luego lo cambié a
Me gustaría mencionar que uso Windows 7 (x64)
fuente
La solución para versiones posteriores de Maven es sencilla. Estoy en OS X ElCap, 10.11.6 y actualizado a Maven 3.3.9. Tuve el mismo problema con el error "
Could not find ...org.codehaus.plexus...
". El enlace proporcionado aquí ofreció la solución en un comentario de McKamey: simplemente elimine M2_HOME (unset M2_HOME
). Una vez que lo intenté, todo funcionó como se esperaba.Esto se puede confirmar visitando
Maven install page
: "Agregue el directorio bin del directorio creado apache-maven-3.3.9 a la variable de entorno PATH", sin mencionar M2_HOME o M3_HOME.fuente
Debe cambiar la ubicación de M2_HOME en lo siguiente:
Además, la instalación del JDK parece más un JRE en lugar de JDK. Para Maven necesitas JDK y NO JRE.
fuente
Encontré un problema similar en mi Mac OSX. Después de una serie de intentos de prueba y error, finalmente lo resolví.
Mi se
~/.bash_profile
veía asíy cuando intenté
echo M2_HOME
desde la terminal, me mostró la ruta correcta, pero cuando intenté disparar cualquier comando maven comomvn clean
omvn install
, siempre me dio el mismo problemaResolví este problema cambiando mi
M2_HOME
a estoY voilá ! ¡Comenzó a funcionar! Simplemente moviendo la posición de
/bin
M2_HOME al frente delPATH
fuente
Solo asegúrese de haber descargado el archivo zip binario (apache-maven-3.5.0-bin.zip) en lugar del archivo zip de origen. Luego agregue el directorio bin del directorio creado apache-maven-3.5.0 a la variable de entorno PATH.
fuente
Para la mayoría de los problemas de configuración de Maven, como "No se pudo encontrar o cargar la clase principal ...", comience con los pasos a continuación para ver si eso soluciona:
luego...
fuente
Tuve el mismo problema. Tengo un cuadro de Windows XP y cuando escribía
mvn -version
en la línea de comandos recibí el temido mensaje de errorConfirmé que mi
M2_HOME
variable estaba configurada en la ruta donde Maven estaba instalado en la PC y que elecho %path%
confirmó que Maven estaba en mi ruta.He estado buscando una solución durante horas cuando me encontré con mi solución (digo mi solución porque sé que probablemente esta no sea la solución para todos los que reciben el mismo error).
Copié la ruta que se asignó a mi
M2_HOME
variable. Abrí una ventana de cmd y escribí cd y pegué el camino que obtuve de miM2_HOME
variable. En ese momento supe que la ruta era correcta porque la ruta se mostraba en la ventana. En este punto ingresé el comando dir y para mi sorpresa, recibí el error Archivo no encontrado.Fui a esa ruta a través del Explorador y, efectivamente, había archivos presentes. Noté que las carpetas se desvanecieron, pero pude acceder a ellas y ver los archivos dentro de cada carpeta (tengo derechos de administrador en mi PC). Miré las propiedades de la carpeta principal para Maven y vi que la casilla Oculto estaba marcada. Eliminé el cheque y apliqué e intenté mi comando dir nuevamente con éxito.
Luego probé el
mvn –version
comando nuevamente, pero esta vez recuperé los resultados esperados.Finalmente, creé un archivo jar y war y mi aplicación web se ejecutó con éxito en mi Tomcat local.
Espero que esto ayude a algunos de ustedes.
fuente
instalar la versión binaria de maven soluciona los problemas
apache-maven-3.6.1-bin.zip
fuente
Además de lo que @khmarbaise ha señalado, creo que ha escrito mal su JAVA_HOME. Si ha instalado en la ubicación predeterminada, no debería haber "-" (guión) entre jdk y 1.7.0_04. Entonces sería
fuente
Para otras personas que puedan encontrarse con esto, no olviden verificar ~ / .mavenrc para ver la configuración de M2_HOME o JAVA_HOME.
fuente
Intente descargar zip binario (por ejemplo, Maven 3.0.5 (Zip binario)) en lugar de la fuente completa en el sitio oficial de maven. También asegúrese de que la línea de comandos reconoce los comandos java y javac. Me di cuenta de que Maven Source zip no incluía ninguna biblioteca en la carpeta lib, sin embargo, Binary zip las tenía + en la carpeta de arranque, tenía plexus-classworlds-2.4.jar. Quizás el problema fue con la ausencia de estas bibliotecas. De todos modos, me ayudó, así que mi M2_HOME es: C: \ Archivos de programa \ Java \ apache-maven-3.0.5 y en PATH pongo: C: \ Archivos de programa \ Java \ apache-maven-3.0.5 \ bin.
fuente
Encuentro que este problema en mi centOS es causado por "Oracle Java se reemplaza por gcj", después de cambiar java predeterminado a "Oracle Java", el problema se resuelve.
fuente
Parece que ha instalado archivos de origen (porque
src
solo viene en archivos de origen y no lo necesitamos). Intenta instalar archivos binarios desde allí . Y luego establezca las variables de entorno como se describe allí . Esto funcionó para mí. Y estoy seguro de que también funcionará para usted.fuente
Creo que descargaste la versión incorrecta. Me encuentro con este problema en este momento, ningún método funciona después de buscar y buscar. Finalmente, descubrí que maven que descargué es el archivo zip de Source . Después de cambiar al archivo zip binario , todo saldrá bien.
fuente
Yo también enfrenté el problema similar. Pero en mi caso, utilicé la carpeta apache-maven-3.3.3-src en las variables de ruta. Más tarde corregí aquellos con la ruta correcta de la carpeta apache-maven-3.3.3-bin. Esto resolvió el problema. No estoy diciendo que es el mismo error reportado aquí, pero de esta manera también puede obtener este error y rectificarlo. Eso es lo que estoy tratando de decir aquí.
fuente
Abra una nueva terminal y haga lo siguiente
Luego escribe
Puede configurar esto
./bash_profile
para hacerlo automáticamente cada vez que ejecute el terminalfuente
Exactamente el mismo error puede aparecer incluso con la configuración correcta de la variable de entorno, si copia SOLO el
bin
directorio al directorio de instalación. Hace que elwhich
trabajo sea fino y los novatos se atascan.fuente
Tuve este problema cuando utilicé Maven 3.5.4 en OpenJDK 11 en Ubuntu. El OpenJDK 11 en Ubuntu en realidad sigue siendo un JDK10:
Instalé OpenJDK de Oracle en /opt/jdk-11.0.1 y ejecuté Maven así:
Ahora funciona como un encanto.
fuente
Tuve un problema con el complemento surefire. Volver a la versión 2.6 funcionó para mí. La versión 2.18 / 20 / 22.1 me dio el error. Ahora probé la versión 3.0.0-M1 de plugin surefire y funciona.
Por lo tanto, algo está mal en suregin plgin entre la versión 2.6 y 3.0.0. Supongo que hay algo codificado por defecto que no debería.
fuente
Para mí, por gracioso que parezca, me ayudó a reiniciar
eclipse
...fuente
Esto funcionó para mí:
Resultado CMD:
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20: 41: 47 + 02: 00) Maven home: C: \ apache-maven-3.6.0 \ bin ..
fuente
También me enfrenté al siguiente error en mi sistema (Mac)
Error: no se pudo encontrar o cargar la clase principal org.codehaus.plexus.classworlds.launcher.Launcher
Después de hacer una búsqueda aleatoria, me encontré con el enlace " http://maven.apache.org/install.html " que dice "JAVA_HOME" debe establecerse en "/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/ Contenidos / Inicio / jre ".
Cuando cambié "JAVA_HOME" como se indicó anteriormente en ".bash_profile", el comando "mvn" comenzó a funcionar pero el comando "javac -version" dejó de funcionar.
Cuando escribí el comando "javac -version", recibí el siguiente error
No se puede encontrar un ejecutable en "/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/bin/javac" (-1)
Por lo tanto, retrocedí mi "JAVA_HOME" a "/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home" en ".bash_profile" y agregué la siguiente línea en la parte superior del script "mvn"
export JAVA_HOME = / Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk / Contents / Home / jre
Ahora los comandos "mvn" y "javac" funcionaron correctamente, pero después de una cuidadosa observación del script mvn, no pude hacer la diferencia entre los siguientes comandos
/ Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk / Contents / Home / bin / java -classpath /Users/venkatarajeevmandava/Documents/Maven/apache-maven-3.6.1/boot/plexus-classworlds-2.6.0. jar -Dclassworlds.conf = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / bin / m2.conf -Dmaven.home = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 - Dlibrary.jansi.path = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / lib / jansi-native -Dmaven.multiModuleProjectDirectory = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / bin org.codehaus.plexus.classworlds.launcher.Launcher
/ Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk / Índice / Inicio / jre / bin / java -classpath /Users/venkatarajeevmandava/Documents/Maven/apache-maven-3.6.1/boot/plexus-classworlds-2.6. 0.jar -Dclassworlds.conf = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / bin / m2.conf -Dmaven.home = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6. 1 -Dlibrary.jansi.path = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1 / lib / jansi-native -Dmaven.multiModuleProjectDirectory = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6. 1 / bin org.codehaus.plexus.classworlds.launcher.Launcher
En lo anterior, el primer comando causó el siguiente error
Error: no se pudo encontrar o cargar la clase principal org.codehaus.plexus.classworlds.launcher.Launcher
mientras que el segundo comando funcionó bien. Tenga en cuenta que ambas rutas anteriores tienen el comando "java" mientras que una es de "jre" y la otra es de "jdk"
Otras variables globales son las siguientes en ".bash_profile"
export M2_HOME = / Users / venkatarajeevmandava / Documents / Maven / apache-maven-3.6.1
export PATH = $ PATH: $ M2_HOME / bin
fuente
Este es un problema común al configurar Maven. Todo lo que necesitas hacer es lo siguiente: -
M2_HOME y M2: - deben declararse como variables del sistema y no como variables USER / ADMIN.
Ruta: esta puede ser la variable del sistema o la variable USER / ADMIN [PATH]. Preferentemente variable del sistema.
Una vez que realice cuidadosamente la configuración de estas 3 variables, puede verificar la instalación de Maven de la siguiente manera.
En el mensaje CMD: -
C: \ Documents and Settings \ ADMIN> mvn --version
Salida: -
Apache Maven 2.0.11 (r909250; 2010-02-12 11: 25: 50 + 0530) Versión de Java: 1.6.0_22 Página de inicio de Java: C: \ Archivos de programa \ Java \ jdk1.6.0_22 \ jre Configuración regional predeterminada: en_US, plataforma codificación: Cp1252 Nombre del sistema operativo: "windows xp" versión: "5.1" arch: "x86" Familia: "windows"
Gracias.
fuente
Junto a las respuestas quizás útiles, pero quizás demasiado sintomáticas, aquí hay una que intenta ayudar a encontrar la causa del problema.
Maven es una herramienta Java de línea de comandos. Eso significa que no es un binario independiente, es una colección de java
.jar
s, interpretada por un jvm (java.exe
en Windows,java
en Linux).El
mvn
comando, es un script. En Windows, es un script llamadomvn.cmd
y en Linux, es un script de shell. Por lo tanto, si escribe:,mvn install
qué sucederá:/bin/sh
ocmd.exe
) para el script de invocación realEl problema es con (2). Afortunadamente, este script es simple, muy simple. Para un programador de Java no debería ser un gran problema depurar un script alrededor de 20 líneas, incluso si es un lenguaje un poco extraño.
En Linux, puede depurar shellscripts dando la
-x
bandera a su intérprete de shell (lo que es más probablebash
). En Windows, debe encontrar alguna otra forma de depurar uncmd.exe
script. Entonces, en lugar demvn install
dar la ordenbash -x mvn install
.El resultado será como:
... no tantas cosas ...
Al final, puede probar fácilmente qué variable de entorno salió mal y puede corregir fácilmente su secuencia de comandos (o configurar lo que se necesita).
fuente