当前位置: 首页 > 知识库问答 >
问题:

找不到Grails 3和Heroku-Stage任务

严昀
2023-03-14

以下命令在本地有效:

./gradlew stage
heroku local web

然后我可以在http://localhost:5000/上看到我的Grails应用程序

部署的第一部分显示它执行我的阶段任务。但后来,它又抱怨找不到阶段任务。

remote: -----> Gradle app detected
remote: -----> Installing OpenJDK 1.8... done
remote: -----> Building Gradle app...
remote:        WARNING: The Gradle buildpack is currently in Beta.
remote: -----> executing ./gradlew stage
remote:        Downloading https://services.gradle.org/distributions/gradle-2.13-all.zip
remote:  !     ERROR: Failed to run Gradle!
remote:        It looks like your project does not contain a 'stage' task, which Heroku needs in order
remote:        to build your app. Our Dev Center article on preparing a Gradle application for Heroku
remote:        describes how to create this task:
remote:        https://devcenter.heroku.com/articles/deploying-gradle-apps-on-heroku
remote:        
remote:        If you're stilling having trouble, please submit a ticket so we can help:
remote:        https://help.heroku.com
remote:        
remote:        Thanks,
remote:        Heroku
remote: 
remote:  !     Push rejected, failed to compile Gradle app.
Other tasks
-----------
assetClean
assetPluginPackage
cleanIdeaWorkspace
console
dependencyManagement
mergeTestReports
pathingJar
pathingJarCommand
schemaExport
shell
stage
urlMappingsReport
wrapper
buildscript {
    ext {
        grailsVersion = project.grailsVersion
    }
    repositories {
        mavenLocal()
        maven { url "https://repo.grails.org/grails/core" }
    }
    dependencies {
        classpath "org.grails:grails-gradle-plugin:$grailsVersion"
        classpath "com.bertramlabs.plugins:asset-pipeline-gradle:2.8.2"
        classpath "org.grails.plugins:hibernate4:5.0.10"
    }
}

version "0.1"
group "paxdata"

apply plugin:"eclipse"
apply plugin:"idea"
apply plugin:"war"
apply plugin:"org.grails.grails-web"
apply plugin:"org.grails.grails-gsp"
apply plugin:"asset-pipeline"

ext {
    grailsVersion = project.grailsVersion
    gradleWrapperVersion = project.gradleWrapperVersion
}

repositories {
    mavenLocal()
    maven { url "https://repo.grails.org/grails/core" }
}

dependencyManagement {
    imports {
        mavenBom "org.grails:grails-bom:$grailsVersion"
    }
    applyMavenExclusions false
}

dependencies {
    compile group: 'org.codehaus.groovy.modules.http-builder', name: 'http-builder', version: '0.6'
    compile 'org.grails.plugins:spring-security-core:3.1.1'
    compile 'org.grails.plugins:quartz:2.0.9'
    compile "org.springframework.boot:spring-boot-starter-logging"
    compile "org.springframework.boot:spring-boot-autoconfigure"
    compile "org.grails:grails-core"
    compile "org.springframework.boot:spring-boot-starter-actuator"
    compile "org.springframework.boot:spring-boot-starter-tomcat"
    compile "org.grails:grails-dependencies"
    compile "org.grails:grails-web-boot"
    compile "org.grails.plugins:cache"
    compile "org.grails.plugins:scaffolding"
    compile "org.grails.plugins:hibernate4"
    compile "org.hibernate:hibernate-ehcache"
    console "org.grails:grails-console"
    profile "org.grails.profiles:web"
    runtime "com.bertramlabs.plugins:asset-pipeline-grails:2.8.2"
    runtime "com.h2database:h2"
    testCompile "org.grails:grails-plugin-testing"
    testCompile "org.grails.plugins:geb"
    testRuntime "org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.1"
    testRuntime "net.sourceforge.htmlunit:htmlunit:2.18"
    compile 'com.github.jsimone:webapp-runner:8.0.30.2'
}

assets {
    minifyJs = true
    minifyCss = true
}

task wrapper(type: Wrapper) {
    gradleVersion = gradleWrapperVersion
}

task stage() {
    dependsOn clean, war
}
tasks.stage.doLast() {
    delete fileTree(dir: "build/distributions")
    delete fileTree(dir: "build/assetCompile")
    delete fileTree(dir: "build/distributions")
    delete fileTree(dir: "build/libs", exclude: "*.war")
}
war.mustRunAfter clean

task copyToLib(type: Copy) {
    into "$buildDir/server"
    from(configurations.compile) {
        include "webapp-runner*"
    }
}

stage.dependsOn(copyToLib)

这是我的procfile的内容:

web: cd build ; java $JAVA_OPTS -Dgrails.env=prod -jar ../build/server/webapp-runner-*.jar --expand-war --port $PORT libs/*.war

对我做错了什么有什么想法吗?

共有1个答案

邢心水
2023-03-14

我也有同样的问题,通过运行以下命令来解决

heroku配置:set gradle_task=“build”git push heroku master

您可以查看以下链接https://devcenter.heroku.com/articles/deploying-gradle-apps-on-heroku

 类似资料:
  • 问题内容: 我尝试在Localy节点中要求一些JS文件-效果很好,但在Heroku中却遇到此错误- 错误:找不到模块“ ./routes.js” 我的代码看起来像: 我究竟做错了什么?谢谢! 问题答案: 您可以尝试运行dyno的一次性副本,以使其列出目录内容–这将使您检查文件是否在期望的位置。(Heroku上有更多这方面的信息在这里。)例如: 这将使Heroku创建(非常简短)您的应用程序的其他副

  • 我正在尝试将我的简单POC grails应用程序连接到我的Mlab MongoDB数据库。我可以通过终端连接。但是我的grails应用程序一直试图连接到localhost:127.0.0.1:27017。但是,application.yml中的连接字符串指向我的mlab实例。对此有什么想法吗? 下面是堆栈跟踪: 错误org.springframework.boot.springapplicatio

  • 问题内容: 我的Node应用程序在本地运行良好,但是在部署到Heroku时遇到错误。该应用程序使用Sequelize在一个文件夹,其中包含,和。在本地,我可以使用中的以下代码导入模型: 这很好,但是,当我部署到Heroku时,应用程序崩溃并显示以下错误: 最初我以为是由于区分大小写(本地mac与heroku linux),但是我移动了文件,进行了git commit,然后又移回并再次提交,以确保在

  • 我正在尝试使用GitHub将Gradle Java应用程序部署到Heroku。回购协议的名称是“v-m-test”。这是我目前使用的Procfile:web:java-jar-target/v-m-test。罐子这是错误的文件吗?

  • 我试图在Heroku上部署一个简单的python机器人,但我得到了错误 当我试图缩放dynos时。我已经做了一个Procfile,它看起来像这样: ,其中dep是我的python代码的名称 原因可能是什么?

  • 我有一个工作,需要一个HiveQL连接2个表(2.5TB,45GB),重新分区到100,然后做一些其他的转换。这是早些时候执行的罚款。 作业阶段:阶段0:配置单元表1扫描阶段1:配置单元表2扫描阶段2:连接的钨交换阶段3:修复的钨交换 今天这项工作陷入了第二阶段。在200个应该执行的任务中,没有一个任务已经开始,但是290个任务由于执行程序被抢占而失败。 在深入研究阶段时,它说“执行者没有报告度量