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

使用Heroku Maven插件部署spring boot应用程序

秦才
2023-03-14

我想将我的spring boot应用程序部署到Heroku。我使用带有以下命令的heroku cli deployplugin使其工作正常:

heroku deploy:jar "my-app.jar" --app {my-app-name} 

但是现在我想使用heroku-maven-plugin来做这个部署。我有我的pom.xml构建部分:

<build>
    <finalName>${artifact-name}-${project.version}</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>com.heroku.sdk</groupId>
            <artifactId>heroku-maven-plugin</artifactId>
            <version>3.0.4</version>
            <configuration>
                <appName>${heroku.appName}</appName>
                <includeTarget>false</includeTarget>
                <includes>
                    <include>${project.build.directory}/${project.build.finalName}.jar</include>
                </includes>
                <jdkVersion>${java.version}</jdkVersion>
                <processTypes>
                    <web>java $JAVA_OPTS -jar
                        ${project.build.directory}/${project.build.finalName}.jar</web>
                </processTypes>
            </configuration>
        </plugin>
    </plugins>
</build>

我正在使用mvn clean heroku:deploy部署应用程序。部署失败,显示以下错误:

Error: -jar requires jar file specification

我错过了什么?

共有1个答案

卫建义
2023-03-14

这一变化使它起了作用:

   <processTypes>
       <web>java $JAVA_OPTS -jar ./target/${project.build.finalName}.jar</web>
   </processTypes>
 类似资料:
  • 完成干净的构建后,我将war文件复制到Tomcat的文件夹中。但是部署会发生两次,并且在上下文已经存在的情况下以异常结束。我错过了什么? 非常感谢您的帮助。

  • “grails cf-ush”会导致下面列出的错误。有没有办法使用云铸造插件“重新开始”。我不希望在MySQL数据库和MongoDB数据库中丢失我的测试数据。 严重:错误监听器开始2012年5月18日下午6:31:26组织。阿帕奇。卡塔琳娜。果心StandardContext启动严重:由于之前的错误,Context[]启动失败2012年5月18日下午6:31:26组织。阿帕奇。卡塔琳娜。加载器。W

  • 尝试在Heroku云中部署Spring Boot应用程序,但编译java应用程序时出现错误,但在我的本地计算机中运行良好。

  • Requirements 运行一个Spark Streaming应用程序,有下面一些步骤 有管理器的集群-这是任何Spark应用程序都需要的需求,详见部署指南 将应用程序打为jar包-你必须编译你的应用程序为jar包。如果你用spark-submit启动应用程序,你不需要将Spark和Spark Streaming打包进这个jar包。 如果你的应用程序用到了高级源(如kafka,flume),你需

  • 我试图在NetBeans中构建一个可以部署到用户和最终用户的应用程序。我对部署项目还是相当陌生的,这是迄今为止我做过的最复杂的一个,所以请容忍我。我目前在NetBeans中有一个工作应用程序,它利用JDK15和JavaFX15。只要我在NetBeans内部运行,一切都会按预期运行。我已经到了我想确保我可以在NetBeans之外发布这个应用程序的地步。为此,我进行了一些搜索,找到了以下教程。 htt

  • 我正在研究Terraform以及如何使用它来设置AWS环境。到目前为止,我已经有了用3个公共子网、3个私有子网、一个互联网网关和3个Nat网关设置VPC的脚本。然而,我对如何在私有子网中部署和重新部署应用程序感到困惑? 在我的场景中,我们使用Spring Boot构建微服务。我们的想法是转移到一种状态,在这种状态下,我们可以将弹性负载平衡器连接到公共子网,并在私有子网中的自动缩放组中承载我们的应用