Невозможно найти основной класс:bootRepackage

У меня проблема со сборкой Gradle. Я использую стандарт, предложенный сайтом Spring ( https://spring.io/guides/gs/rest-service/), но когда я пытаюсь использовать сборку Gradle, я получаю эту ошибку:

Моя проблема с учебой

Это не работает для этого gradle, но когда я использую другой (который я взял, когда я был в школе), он работает отлично.

7 ответов

Есть две возможности

  1. Ваш исходный каталог находится не в правильном месте (используйте директиву sourceSets, чтобы исправить это. Ваш исходный каталог должен выглядеть примерно так: src/main/java/your/package)
  2. Добавьте это, чтобы указать, где находится ваш основной класс

    springBoot { mainClass = "hello.FileUploader" }

Я уверен, что это 1.

У меня тоже есть эта проблема, вот я решил проблему:

использование org.springframework.boot:spring-boot-starter вместо org.springframework.boot:spring-boot-starter-web, если ваш проект является только модулем, который будет использоваться в другом проекте.

Или установите основной класс в Gradle:

mainClassName = 'your.package.MainClass'

Или просто отключить bootRepackage

bootRepackage {
    enabled = false
}

В вашем проекте нет основного метода (иначе плагин найдет его). Основной метод имеет очень специфическую подпись, поэтому убедитесь, что у вас есть public static void main(String[] args),

Если основной класс не определен в текущем проекте, к которому принадлежит файл build.gradle, но вы хотите запустить его для какой-то цели, например, для теста интеграции спринта. Сделай это так:

Добавление

bootRepackage {
    mainClass = 'your.app.package.Application'
}

в build.gradle (после строки применить плагин: 'spring-boot', потому что плагин должен быть загружен) исправить проблему.

Я знаю, что это очень старый пост. Но я столкнулся с этой проблемой, пытаясь создать свое первое приложение для весенней загрузки ( https://spring.io/guides/gs/spring- boot/). Так что расположение файла pom.xml, упомянутого в руководстве, неверно. Вам нужно разместить его вне папки src. Итак, вот окончательная структура каталогов - /workspace/src/main/java/hello/HelloController.java /workspace/src/main/java/hello/Application.java /workspace/pom.xml

Я решил это, указав кодировку. Вероятно, это потому, что я написал код в IDE.

java -Dfile.encoding=UTF-8 -jar build <filename>.jar

Это случилось и со мной.

Я был смущен расположением build.gradle file: я думал, что он должен быть расположен в src / main / java / hello, потому что он упоминается сразу после инструкции по созданию этой структуры подкаталога.

Он должен быть помещен в корневую папку, содержащую папку src. Однажды я сделал это и позвонилgradle build"из корневой папки и нет"./gradlew build"Как указывает гид, сборка прошла успешно.

Я не выполнял стандартную установку для gradle, просто скачал двоичные файлы, может быть, поэтому./gradlew build"не удалось для меня.

Другие вопросы по тегам