2013-07-29 2 views
1

Я пытаюсь развернуть приложение dropwizard на heroku, которое не запускается. Его работы прекрасны локально, используя «сервер управления градиентом config.yml»Невозможно получить доступ к jar при запуске приложения dropwizard для gradle, развернутого на heroku

Я использую град для сборки, и когда я нажимаю на герою, сборка успешна. Мой Gradle этап задача dependsOn (создание жира банка) чистой и баночка

Мои PROCFILE имеет:

Веб: ява $ JAVA_OPTS -jar dropwizard-приложение/строить/LIBS/dropwizard-приложение. баночка сервер dropwizard-приложение/config.yml

выше терпит неудачу с "Невозможно получить доступ к jarfile dropwizard-приложение/строить/LIBS/dropwizard-app.jar"

Я безуспешно пытался с

веб: Java $ JAVA_OPTS -jar сборки/LIBS/сервер config.yml dropwizard-app.jar

Я также попытался выполнить с помощью команды Gradle

веб: Gradle запустить сервер config.yml

Это дает ошибку Баш: Gradle команда не найдена

Мои Gradle задачи заключаются в следующем:

task stage(dependsOn: ['clean', 'jar']) 

    run { 
     args 'server', 'config.yml' 
    } 

    jar { 
     manifest { 
      attributes 'Title': 'dropwizard-app', 'Version': version,'Main-Class': mainClassName 
     } 
     archiveName 'dropwizard-app' 
     dependsOn configurations.runtime 
     from { 
      configurations.compile.collect {it.isDirectory()? it: zipTree(it)} 
     } 
    } 

Я пропускаю что-то здесь? Как запустить мое приложение dropwizard?

ответ

7

Понял работает.

Как уже упоминалось выше, я пытался выполнить dropwizard-app.jar но баночка создан на Heroku не указанных имя, он принял имя архива по умолчанию начиная с наращиванием'some сгенерированного value'.jar

Так я добавил settings.gradle к моему проекту:

rootProject.name = 'dropwizard-app' 

Теперь банку Создавшаяся dropwizard-приложение-1.0.jar

как я установил атрибут версии 1.0 в сборке.Gradle

Я использовал heroku run bash проверить файлы на Heroku

+2

+1 для 'Heroku запустить bash' – rozky

+0

+1. Heroku пытается быть симпатичным с причудливыми API и большими кнопками, чтобы нажимать без реального сока. В любой из своих документов не упоминается, что загруженный артефакт переименован. По крайней мере, не то, что я мог найти с часом поиска в Интернете. –

0

Я написал руководство по развертыванию в Maven, описывающее how to deploy a Dropwizard to Heroku, которое может оказать некоторую помощь. Хотя он не охватывает град, он указывает на некоторые распространенные ошибки в среде Heroku.

Например, ваш PROCFILE должен выглядеть следующим образом:

web java $JAVA_OPTS -Ddw.http.port=$PORT -Ddw.http.adminPort=$PORT -jar path/to/dw/module/target/example-develop-SNAPSHOT.jar server path/to/dw/module/config-heroku.yml