java.lang.NoClassDefFoundError при работе на maven - PullRequest
0 голосов
/ 17 сентября 2018

Я запускаю следующие команды из здесь

mvn package

Пакет успешно компилируется.

Но когда я работаю

java -cp target/cloak-1.0-SNAPSHOT.jar com.github.cloak.App 

Выдает следующую ошибку

Ошибка: невозможно инициализировать основной класс com.github.cloak.App

Причина: java.lang.NoClassDefFoundError: boofcv / gui / image / ImagePanel

Неправильно ли я компилирую?

РЕДАКТИРОВАТЬ: я не использую eclipse

ОБНОВЛЕНИЕ: https://stackoverflow.com/a/52367511/5699915

Ответы [ 2 ]

0 голосов
/ 17 сентября 2018

Одним из способов является создание толстой фляги со всеми зависимостями. Плагин сборки является самым простым, добавьте эти строки в pom.xml и перепакуйте его.

 <build>
  <plugins>
  <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
            <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
            <archive>
                    <manifest>
                        <mainClass>com.github.cloak.App</mainClass>
                    </manifest>
            </archive>
        </configuration>
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                    <goal>single</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
    </plugins>
    </build>
0 голосов
/ 17 сентября 2018

использовать mvn exec:java

    <build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.2.1</version>
            <configuration>
                <mainClass>com.example.Main</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

см. Этот пост

https://stackoverflow.com/a/15872962/1484621

...