在 heroku 上部署了 discord bot,bot 不会上线
Deployed discord bot on heroku, bot won't come online
看过以前的帖子,但不是很懂(可能是我傻)。其中一位建议这样设置 procfile
worker: java $JAVA_OPTS -jar <JAR_FILE_PATH>
但我不知道该文件路径是什么。我按照 Heroku 文档得到了这个,我想知道如何在线获取 discord 机器人。
目前,它在 intelliJ 中作为 maven 运行 使用命令提示符行“heroku:deploy-war”进行部署
这是我的程序文件:worker: java $JAVA_OPTS -jar target\Disbot-1.0-SNAPSHOT.jar
总而言之,这只是一种非常复杂的方式来询问“在 heroku 中执行此操作时的 jar 文件路径是什么?”
如果有更好的方法或更有效的方法,我很乐意尝试一下。如果需要更多信息,我会尽可能提供。
问题已解决 - 更好地找到了解决方法。将其打包为 .jar 文件并意识到 Procfile 实际上只是一个命令提示符。使用具有文本工作器的 Procfile 将 jar 上传到 GitHub:java -jar Jar.jar。虽然我没有得到答案,但感谢所有花时间看这个问题的人
由于 Heroku 在 /tmp
中随机生成 target
目录,当前答案在本答案发布时 (2021-09-18) 不起作用,所以我按照以下步骤操作来自 Heroku documentation,使用此项目结构:
.
├─ pom.xml
├─ Procfile
└─ src
└─ main
└─ java
└─ com
└─ example
└─ Main.java
- 将此构建依赖项添加到
pom.xml
:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.1.1</enter code hereversion>
<configuration>
<assembleDirectory>target</assembleDirectory>
<programs>
<program>
<mainClass>com.example.Main</mainClass>
<name>main</name>
</program>
</programs>
</configuration>
<executions>
<execution>
<phase>package</phase><goals><goal>assemble</goal></goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
- 使用此指令添加了
Procfile
:worker: sh target/bin/main
- 提交更改并推送到 Heroku 的远程。
- 调整 dyno 使其不会休眠(考虑到您的项目有最大小时数):
heroku ps:scale worker=1
看过以前的帖子,但不是很懂(可能是我傻)。其中一位建议这样设置 procfile
worker: java $JAVA_OPTS -jar <JAR_FILE_PATH>
但我不知道该文件路径是什么。我按照 Heroku 文档得到了这个,我想知道如何在线获取 discord 机器人。
目前,它在 intelliJ 中作为 maven 运行 使用命令提示符行“heroku:deploy-war”进行部署
这是我的程序文件:worker: java $JAVA_OPTS -jar target\Disbot-1.0-SNAPSHOT.jar
总而言之,这只是一种非常复杂的方式来询问“在 heroku 中执行此操作时的 jar 文件路径是什么?”
如果有更好的方法或更有效的方法,我很乐意尝试一下。如果需要更多信息,我会尽可能提供。
问题已解决 - 更好地找到了解决方法。将其打包为 .jar 文件并意识到 Procfile 实际上只是一个命令提示符。使用具有文本工作器的 Procfile 将 jar 上传到 GitHub:java -jar Jar.jar。虽然我没有得到答案,但感谢所有花时间看这个问题的人
由于 Heroku 在 /tmp
中随机生成 target
目录,当前答案在本答案发布时 (2021-09-18) 不起作用,所以我按照以下步骤操作来自 Heroku documentation,使用此项目结构:
. ├─ pom.xml ├─ Procfile └─ src └─ main └─ java └─ com └─ example └─ Main.java
- 将此构建依赖项添加到
pom.xml
:
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>appassembler-maven-plugin</artifactId> <version>1.1.1</enter code hereversion> <configuration> <assembleDirectory>target</assembleDirectory> <programs> <program> <mainClass>com.example.Main</mainClass> <name>main</name> </program> </programs> </configuration> <executions> <execution> <phase>package</phase><goals><goal>assemble</goal></goals> </execution> </executions> </plugin> </plugins> </build>
- 使用此指令添加了
Procfile
:worker: sh target/bin/main
- 提交更改并推送到 Heroku 的远程。
- 调整 dyno 使其不会休眠(考虑到您的项目有最大小时数):
heroku ps:scale worker=1