Не удается найти основной класс после преобразования проекта Java в Maven - PullRequest
5 голосов
/ 29 мая 2011

У меня очень простой код HelloWorld на Java, который работает нормально. Я использую Eclipse и пытаюсь понять, как импортировать зависимости для проекта с помощью плагина maven2 eclipse.

    public class testMavenDep {

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

Однако, когда я щелкаю правой кнопкой мыши по проекту> настроить> преобразовать в maven проект, а затем попробовать и запустить его, я получаю сообщение об ошибке, говорящее ...

Не удалось найти основной класс: testMavenDep.testMavenDep. Программа закроется.

и следующее в консоли ...

java.lang.NoClassDefFoundError: testMavenDep / testMavenDep Вызывается: java.lang.ClassNotFoundException: testMavenDep.testMavenDep at java.net.URLClassLoader $ 1.run (неизвестный источник) at java.security.AccessController.doPrivileged (собственный метод) на java.net.URLClassLoader.findClass (неизвестный источник) в java.lang.ClassLoader.loadClass (Неизвестный источник) at sun.misc.Launcher $ AppClassLoader.loadClass (неизвестный источник) в java.lang.ClassLoader.loadClass (Неизвестный источник) Исключение в теме "главная"

Мой файл 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>

У меня вопрос к уже существующему Java-проекту, как правильно добавить зависимости maven? Я могу добавить зависимости, используя метод, описанный выше, но у меня возникают проблемы с его отсутствием основного класса. Заранее спасибо!

1 Ответ

5 голосов
/ 29 мая 2011

В какую исходную папку вы помещаете свой основной класс? По умолчанию Eclipse помещает его в src, но условными обозначениями maven являются src / main / java. Возможно, добавление зависимостей maven приводит к изменению исходных папок, так что ваш класс не компилируется.

...