【问题标题】:How to make procfile for java server on heroku?如何在heroku上为java服务器制作procfile?
【发布时间】:2017-06-12 10:24:47
【问题描述】:

我花了一天时间尝试为 Google Firebase 消息运行运行 java xmpp fcm 服务器。
example 在 Heroku 服务上建立服务器之后,我发现我需要创建 procfile 文件。 Procfile 是:

Procfile 是一种机制,用于声明您的 Heroku 平台上的应用程序 dynos。

直到现在我都尝试使用以下命令启动它:

web: java -cp target/classes/:target/dependency/* com.wedevol.xmpp.server.CcsClient 

但它不起作用。 $ heroku 日志:

2017-01-31T13:14:50.844896+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=vast-forest-64025.herokuapp.com request_id=a8a8b191-3679-4746-abf3-c7766fbb8764 fwd="141.226.161.218" dyno= connect= service= status=503 bytes=

$ heroku ps 返回:

=== web (Free): java -cp target/classes/:target/dependency/* com.wedevol.xmpp.server.CcsClient (1) web.1: crashed 2017/01/31 15:13:08 +0200 (~ 5m ago)

在这里我需要你的帮助。我需要在该文件中定义才能成功运行 Java 服务器(来自上面的链接)。 谢谢!

有关其他信息,原始 POM 文件如下所示:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.wedevol</groupId>
<artifactId>xmppserver2</artifactId>
<version>0.0.2</version>
<packaging>jar</packaging>

<name>FCM XMPP Server</name>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <jdk.version>1.7</jdk.version>
</properties>

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.igniterealtime.smack</groupId>
        <artifactId>smack-java7</artifactId>
        <version>4.1.8</version>
    </dependency>
    <dependency>
        <groupId>org.igniterealtime.smack</groupId>
        <artifactId>smack-tcp</artifactId>
        <version>4.1.8</version>
    </dependency>
    <dependency>
        <groupId>com.googlecode.json-simple</groupId>
        <artifactId>json-simple</artifactId>
        <version>1.1.1</version>
    </dependency>
</dependencies>

<build>
    <finalName>xmpp-server</finalName>
    <plugins>

        <!-- Set a JDK compiler level -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

    </plugins>
</build>

【问题讨论】:

  • 您的问题非常广泛。最好更具体一些,显示您尝试过的代码。
  • @AllLelopath 编辑了我的问题,希望现在它更加具体和清晰。你对我的问题有什么想法吗?谢谢。
  • 如何在本地运行应用程序(使用什么命令来运行它)?另外,您能否详细说明“它不起作用”?您在heroku logs 中看到错误吗?
  • @codefinger 编辑并添加了日志和其他信息。似乎服务器应用程序崩溃了,但我不知道为什么。你有什么想法吗?

标签: java heroku server xmpp procfile


【解决方案1】:

经过几个小时的痛苦,终于为那个 Java 服务器找到了正确的 Procfile:

web: java -cp target/classes/:target/dependency/* com.wedevol.xmpp.EntryPoint

*上传前不要忘记构建项目:

mvn package

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-06
    • 2020-07-02
    • 2016-06-05
    • 1970-01-01
    • 1970-01-01
    • 2015-06-11
    • 2011-06-17
    • 2019-03-26
    相关资源
    最近更新 更多