Gradle внезапно выдал ошибку, связанную с mainClassName - PullRequest
0 голосов
/ 27 июня 2018

Я использую Java + Spring Boot + Gradle + Docker. Мое весеннее загрузочное приложение неожиданно начало выдавать ошибку "Не указано значение для свойства 'mainClassName'. Это работало нормально всего несколько дней назад.

Я гуглил и добавил в свой скрипт ниже:

mainClassName = 'com.test.MyMainClass'

Теперь проект успешно собран, но я получаю ошибку ниже при запуске с использованием Docker.

Exception in thread "main" java.lang.ClassNotFoundException: 
com.test.MyMainClass
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:94)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:46)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)

Ниже мой файл докера:

FROM oraclejdk8:slim
ADD build/libs/MyTest.jar /MyTest.jar
CMD [ "java", "-jar", "/MyTest.jar" ]

Я гуглил, но не могу найти решение. Пожалуйста, помогите.

UPDATE Я скачал банку и извлек ее. Я вижу, что он не содержит никаких классов из src / main / java. Таким образом, основная проблема заключается в том, что мои классы (которые включают в себя и основной класс) не собираются в банке.

Это странно, так как ранее тот же код работал нормально. У кого-нибудь есть указатели.

Я запустил сборку gradle на локальном компьютере (Windows), и сборка застряла в задаче bootRepackage . Ниже последний журнал:

executing actions for task ':bootRepackage'.
02:42:47.123 [INFO] [org.gradle.api.Task] Setting mainClass: com.test.MyMainClass
 Building 81% : :bootRepackage

Если я отключу его тогда и запустите. Сборка завершается, и в банке содержатся мои занятия.

Должен ли я отключить эту задачу bootRepackage? Любая помощь будет высоко оценена.

Первоначальная проблема возникла во время сборки jenkins на linux.

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