Java Heroku找不到工人
我按照上面的教程在heroku上部署了我的应用程序。当我在IDE(intelliJ IDEA)中打包代码时,一切都很好。将创建一个目标文件夹,其中包含名为bin的子floder,它包含两个文件:worker和worker.bat 在我的根控制器中,如果我运行命令Java Heroku找不到工人,java,maven,heroku,Java,Maven,Heroku,我按照上面的教程在heroku上部署了我的应用程序。当我在IDE(intelliJ IDEA)中打包代码时,一切都很好。将创建一个目标文件夹,其中包含名为bin的子floder,它包含两个文件:worker和worker.bat 在我的根控制器中,如果我运行命令sh target/bin/worker,那么应用程序将正确执行并符合要求 另一方面,在我将代码推送到heroku并使用命令之后: heroku ps:scale worker=1 我得到这个错误:- sh: 0: Can't open
sh target/bin/worker
,那么应用程序将正确执行并符合要求
另一方面,在我将代码推送到heroku并使用命令之后:
heroku ps:scale worker=1
我得到这个错误:-
sh: 0: Can't open target/bin/worker
Process exited with status 127
State changed from up to crashed
我的POM.xml与教程中的完全相同,只是有几个额外的依赖项
问题是什么?如何重新考虑
POM.xml:-
<dependencies>
....
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<assembleDirectory>target</assembleDirectory>
<programs>
<program>
<mainClass>MainClass</mainClass>
<name>worker</name>
</program>
</programs>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>assemble</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
....
org.codehaus.mojo
Heroku将使用Maven而不是IntelliJ构建您的应用程序。在本地计算机上编译/mvnw
是否创建目标/bin/worker
文件?是的。我实际上在使用windows。因此,当我在终端中运行mvn包时,它会构建target/bin/worker
。我切换到linux,然后运行sh target/bin/worker
,它就可以工作了。它完美地执行代码。(我这样做是因为运行时生成的worker.bat表示输入命令太长,无法运行)。但主要的一点是,当使用maven打包时,目标文件夹被创建,其中包含target/bin/worker
和target/bin/worker.bat
@Malax,因此,我有更多的代码和图像要问。另外,mvn compile
不会创建target/bin/worker
,但是我的POM.xml清楚地提到了包,并且在教程中也要求这样做。我做错什么了吗?我对马文来说确实是个新手。所有的指导都会得到很好的响应。mvn clean install
还会生成target/bin/worker
Heroku将使用Maven而不是IntelliJ构建你的应用程序。在本地计算机上编译/mvnw
是否创建目标/bin/worker
文件?是的。我实际上在使用windows。因此,当我在终端中运行mvn包时,它会构建target/bin/worker
。我切换到linux,然后运行sh target/bin/worker
,它就可以工作了。它完美地执行代码。(我这样做是因为运行时生成的worker.bat表示输入命令太长,无法运行)。但主要的一点是,当使用maven打包时,目标文件夹被创建,其中包含target/bin/worker
和target/bin/worker.bat
@Malax,因此,我有更多的代码和图像要问。另外,mvn compile
不会创建target/bin/worker
,但是我的POM.xml清楚地提到了包,并且在教程中也要求这样做。我做错什么了吗?我对马文来说确实是个新手。所有的指导都会得到真正的重视。mvn clean install
也会生成target/bin/worker