2011-05-28 24 views
5

Tengo un código HelloWorld muy simple en Java que funciona bien. Estoy usando Eclipse e intento descubrir cómo importar dependencias para un proyecto con el complemento maven2 eclipse.No se puede encontrar la clase principal después de convertir el proyecto de Java a maven

public class testMavenDep { 

     public static void main(String arg[]){ 
      System.out.println("Hello World"); 
     } 
    } 

Sin embargo, cuando hago clic derecho en el proyecto> Configurar> convertir a Maven proyecto, y luego tratar de correr me da un mensaje de error que dice ...

Could not find the main class: testMavenDep.testMavenDep. Program will exit.

Y en la siguiente la consola ...

java.lang.NoClassDefFoundError: testMavenDep/testMavenDep Caused by: java.lang.ClassNotFoundException: testMavenDep.testMavenDep at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) Exception in thread "main"

Mi archivo es pom ...

<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.0</modelVersion> 
    <groupId>testMavenDep</groupId> 
    <artifactId>testMavenDep</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
</project> 

Mi pregunta es, para un proyecto Java ya existente, ¿cuál es la forma correcta de agregar dependencias maven? Puedo agregar las dependencias usando el método anterior, pero estoy teniendo problemas para perder la pista de la clase principal. ¡Gracias por adelantado!

+0

Pregunta sobre maven pero no incluye su archivo POM ... –

+0

Mis disculpas ... ahora está adjunto. – Daniel

Respuesta

5

¿Cuál es la carpeta de origen en la que está colocando su clase principal? Por defecto, Eclipse lo coloca en src, pero las convenciones de maven son src/main/java. Podría ser que la adición de dependencias de maven cambie sus carpetas de origen para que su clase no se compile.

+0

Sí esto es lo que estaba sucediendo. Gracias. – Daniel

+1

@Daniel Disculpe, ¿cuál es exactamente la solución aquí? Moví mis archivos fuente a src/main/java pero recibo el mismo error que tú. – Bren

Cuestiones relacionadas