Неудачная попытка задеплоить своего бота на heroku
Пытаюсь развернуть telegram-бота на сервисе Heroku. Использую Gradle и язык java.
После команды ./gradew run на локальной машине все отлично работает, в терминале пишет 75% EXECUTING и бот выполняет свою работу. При деплоинге на heroku я указываю команду run и бот тоже работает, но находится в состоянии бесконечного билда. То есть он проработает 20 минут, после чего наступит тайм-аут билда.
Если я указываю команду build, то проект собирается, но не выполняется.

Соответственно, мне нужно, чтобы проект сначала собрался, а уже потом исполнялся. Или же использовать уже готовы инструмент от самих Heroku (но я пока не знаю, какой именно).
Пробовал прописать в Procfile команду для запуска, но это не помогло
worker: ./gradlew run
Пробовал собирать проект в jar-архив, но возникли проблемы с манифестом.
Пробовал использовать другие команды в Procfile, безуспешно
Пробовал подключиться по SSH и запустить проект, не смог подключиться
Читал доки по развертыванию и писал всякие разные скрипты в build.gradle, безуспешно
Думаю, все дело именно в файле грэдла и Procfile, других вариантов на ум пока что не пришло
build.gradle
plugins {
id 'java'
id 'application'
}
mainClassName = 'com.olegkriv.DachaBot.Main'
jar {
baseName = 'DachaBot'
version = '0.1.0'
manifest {
attributes(
'Main-Class': 'com.olegkriv.DachaBot.Main'
)
}
}
task stage(dependsOn: ['build', 'clean'])
build.mustRunAfter clean
group 'com.olegkriv'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
// Telegram
implementation 'org.telegram:telegrambots-abilities:5.3.0'
implementation 'org.telegram:telegrambots:5.3.0'
// Slf4j
implementation 'org.slf4j:slf4j-api:1.7.32'
implementation 'org.slf4j:slf4j-simple:1.7.32'
// Lombok
compileOnly 'org.projectlombok:lombok:1.18.22'
annotationProcessor 'org.projectlombok:lombok:1.18.22'
}
test {
useJUnitPlatform()
}