MAVEN 上的 Java BOT(带有 JDA 库)在 Heroku 上运行
Posted
技术标签:
【中文标题】MAVEN 上的 Java BOT(带有 JDA 库)在 Heroku 上运行【英文标题】:Java BOT on MAVEN (with JDA libraries) run on Heroku 【发布时间】:2019-03-02 12:17:21 【问题描述】:我在 IntelliJ 中使用 Maven 完成了一个项目。这是一个用 Java 编写的机器人。它接收请求,对其进行处理,然后将响应发送给提出请求的人。
当我将项目从我的 GitHub 存储库部署到 Heroku 时,它会成功部署。
但是当我打开项目时,Heroku 向我显示了这个:
我确定我对 Procfile
有问题,因为我不知道如何管理,并且可能我对 pom.xml
有问题
过程文件:
worker: java -jar out/artifacts/lancebot_jar/lancebot.java
pox.xml:
<?xml version="1.0" encoding="UTF-8"?>
<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>lancebot</groupId>
<artifactId>lancebot</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>net.dv8tion</groupId>
<artifactId>JDA</artifactId>
<version>3.8.0_427</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>jcenter</id>
<name>jcenter-bintray</name>
<url>http://jcenter.bintray.com</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
【问题讨论】:
运行heroku logs
并分享输出
【参考方案1】:
您的Procfile
存在一些问题:
worker: java -jar out/artifacts/lancebot_jar/lancebot.java
worker
进程类型不会获得网络端口。它不会提供网页,除非它被称为 web:
。
java
命令无效。您已将 .java
文件传递给它,而不是 .jar
【讨论】:
以上是关于MAVEN 上的 Java BOT(带有 JDA 库)在 Heroku 上运行的主要内容,如果未能解决你的问题,请参考以下文章
Discord Bot 不会删除消息(带有 JDA API 的 Eclipse IDE Java)
Java Discord Bot (JDA) 检查是不是固定
Discord bot 无法使用 JDA 在 java 中发送消息