Не удалось найти или загрузить основной класс в Groovy gradle проекте - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть отличное приложение, которое я хочу упаковать в исполняемый файл с Gradle.Проблема в том, что когда баночка готова, у меня ошибка: не удалось найти или загрузить основной класс.Вот мой build.gradle:

group 'com.demo'
version '1.0-SNAPSHOT'

 apply plugin: 'groovy'
 apply plugin: 'java'
 apply plugin: 'idea'
 apply plugin:'application'
 mainClassName = 'com.demo.App'


 buildscript {
      repositories {
          mavenCentral()
      }
      dependencies {}
 }

  repositories {
   mavenCentral()
  }
  // java version dependency
   sourceCompatibility = 1.8
   targetCompatibility = 1.8

  jar {
baseName = 'cim-configurator'
version =  '0.1.0'
manifest {
    attributes("Build-Time": new Date().format("yyyy-MM-dd HH:mm:ss"),
            "Build-Jdk": System.getProperty("java.version"),
            "Built-By": System.getProperty("user.name"),
            "Created-By": "Gradle",
            "Main-Class": "com.demo.App"
    )
  }
}

Вот иерархия файлов:

com.demo
   ActiveMq
   App
   Database
   Rbac
   Run.groovy
   Service

Ответы [ 2 ]

0 голосов
/ 16 апреля 2019

У меня была эта точно такая же проблема в проекте Groovy & Gradle.Это ответ, который решил эту проблему .

TL; DR

Используйте плагин Shadow-jar , добавивследующий плагин к вашему блоку плагинов в build.gradle:

plugins {
    id 'com.github.johnrengelman.shadow' version '5.0.0'
}

Затем запустите ./gradlew shadowJar

Вы получите файл jar emailer-all.jar, который можно запустить.

0 голосов
/ 15 октября 2018

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...