231 votos

Convertir un proyecto Eclipse existente en un proyecto Maven

Para un proyecto en el trabajo, estamos considerando usar el plugin de Maven para Eclipse para automatizar nuestras construcciones. En este momento el procedimiento es mucho más complicado de lo que debería ser, y esperamos que Maven simplifique las cosas a una construcción de un solo clic.

Mi pregunta es, ¿existe un asistente o importador automático para convertir un proyecto Java existente de Eclipse en un proyecto Maven, utilizando el plugin de Maven? O debo crear un nuevo proyecto Maven y copiar manualmente todos los archivos fuente, librerías, etc.

289voto

chengdong Puntos 1629

A partir de m2e 0.13.0 (si no es anterior), puede convertir un proyecto Java en un proyecto Maven desde el menú contextual. Aquí está cómo:

  • Haga clic con el botón derecho del ratón en el proyecto Java para que aparezca el menú contextual
  • Seleccione Configurar > Convertir en proyecto Maven

Aquí está el pasos detallados con capturas de pantalla.

133voto

Brabster Puntos 18764

Si sólo quieres crear un POM por defecto y habilitar las características de m2eclipse: así que estoy asumiendo que no tienes actualmente una configuración de construcción automatizada alternativa que estás tratando de importar, y estoy asumiendo que estás hablando del plugin m2eclipse.

El plugin de m2eclipse proporciona una opción de clic derecho en un proyecto para añadir este pom.xml por defecto:

Nuevas versiones de M2E

Clic derecho en el proyecto -> submenú Configurar -> Convertir en proyecto Maven

Versiones antiguas de M2E

Haga clic con el botón derecho en el proyecto -> submenú Maven -> Habilitar la gestión de dependencias.

Eso hará lo necesario para habilitar el plugin para ese proyecto.

Para responder a ' ¿Existe un importador automático o un asistente? ': no que yo sepa. El uso de la opción anterior le permitirá habilitar el plugin m2eclipse para su proyecto existente evitando la copia manual. Todavía tendrá que configurar las dependencias y otras cosas que necesita para construir usted mismo.

11voto

Yo estaba teniendo el mismo problema y quería Mavenise todo el espacio de trabajo de eclipse que contiene alrededor de 60 proyectos de Eclipse. Hacerlo manualmente requería mucho tiempo y las opciones alternativas no eran tan viables. Para resolver el problema finalmente creé un proyecto llamado eclipse-to-maven en github. Como eclipse no tiene toda la información necesaria sobre las dependencias, hace lo siguiente:

  • Basado en <classpathentry/> XML en el archivo .classpath, crea las dependencias de otro proyecto, identifica el archivo jar de la biblioteca y basándose en su nombre (por ejemplo jakarta-oro-2.0.8.jar) identifica su versión. Actualmente artifactId y groupId son los mismos ya que no he podido encontrar algo que me devuelva el groupId de Maven de la dependencia basado en artifactId . Aunque no es una solución perfecta, proporciona una buena base para acelerar la Mavenización.

  • Mueve todas las carpetas de fuentes según la convención de Maven (como src/main/java )

  • Como los proyectos de Eclipse que tienen nombres con espacios son difíciles de tratar en el entorno Linux/Unix, los renombra también con nombres sin espacios.

  • Los archivos pom.xml resultantes contienen las dependencias y la estructura básica del pom. Tienes que añadir manualmente los plugins de Maven necesarios.

7voto

Haz clic con el botón derecho del ratón en el nombre del proyecto > Configurar > Convertir en proyecto Maven > haz clic en finalizar. Aquí añadirás algunas dependencias para descargar y añadir tu archivo jar esperado.

Esto creará un archivo pom.xml autogenerado. Abra ese archivo en formato xml en su editor de eclipse. Después de la etiqueta build ( </build> ) añade tus dependencias que puedes copiar del sitio web de maven y añadirlas allí. Ahora usted está listo para ir. Estas dependencias añadirán automáticamente los archivos jar necesarios.

2voto

GregNash Puntos 311

Pude convertir mi proyecto usando la respuesta de chengdong, pero no generó la estructura de directorios que sugiere Maven. Encontré que no era difícil crear un nuevo proyecto y copiar el código fuente.

Todavía soy nuevo en Maven y no entiendo todas las diferencias entre estos dos enfoques, pero ahora parece que tengo un proyecto Maven real en lugar de un Frankenstein que se instalará en mi repositorio local.

Si mi proyecto estuviera completo y no tuviera planes de cambiarlo, entonces el convertidor automático probablemente habría sido una buena solución para mí.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X