Ошибка: не удалось найти или загрузить основной класс с - PullRequest
0 голосов
/ 27 мая 2019

Я знаю, что этот вопрос задавался миллион раз, но я не могу найти способ его решить.

Проблема в том, что когда я запускаю свой файл JAR java -jar MYFATJAR.jar, используя:

openjdk version "1.8.0_191-1-ojdkbuild"
OpenJDK Runtime Environment (build 1.8.0_191-1-ojdkbuild-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

Я получаю следующую ошибку:

Error: Could not find or load main class PACKAGE_PATH.MAINCLASSNAME

Но когда я запускаю ту же команду с:

java version "1.8.0_212"
Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)

банка работает нормально.

Я компилирую JAR, используя Gradle. Вот сокращенный файл build.grade:

// build.gradle

plugins {
    id 'java'
    id 'application'
}

jar {
    manifest {
        attributes (
                "Main-Class": "org.me.logreader.App",
                "Specification-Title": "Log Reader",
                "Specification-Vendor" : "ME",
                "Implementation-Title"   : "Log Reader",
                "Implementation-Vendor" : "ME"
        )
    }

    archiveName = "LogReader.jar"
    from {
        configurations.compile.collect {it.isDirectory() ? it : zipTree(it)}
    }
}

...

Если я открываю JAR с WinRAR, я вижу, что он отображается так: enter image description here

Структура проекта следующая:

src
   -main
        -java
           -org.me.logreader
               -controllers
               -model
               -parsers
               -version
               -views
               -workers
               App.java

UPDATE Содержимое файла MANIFEST.MF:

Manifest-Version: 1.0
Implementation-Title: Log Reader
Specification-Vendor: ME
Specification-Title: Log Reader
Main-Class: org.kobbigal.logreader.App
Implementation-Vendor: ME
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...