我正在尝试在Heroku上部署我的Java EE后端应用程序,但我不确定我需要在Procfile中添加什么。我正在学习本教程,但当我尝试使用heroku local
或heroku local web
部署(本地)时,它失败了。
我尝试了web: java -jar target/muffinmap-backend.jar
,但我似乎没有.jar文件(似乎),我收到错误:Error: Unable to access jarfile target/muffinmap-backend.jar
。
我有一个war文件,但我不相信我应该使用它(至少与上面不一样)因为当我尝试web: java -jar target/muffinmap-backend.war
时我得到no main manifest attribute, in target/muffinmap-backend.war
这是可以理解的,因为它不是.jar文件。
所以,现在我不知道如何解决这个问题,我开始怀疑它是否可能。
如果需要更多上下文只需评论,我会尝试添加它。
我希望有人可以帮助我。提前谢谢。
答案 0 :(得分:2)
阅读本指南,在Heroku https://devcenter.heroku.com/articles/war-deployment
上部署WAR文件它完全回答了你的问题。有几种方法可以将WAR文件部署到Heroku。如果您使用Git进行部署,则可能需要include webapp-runner。但您也可以直接部署WAR文件,这不需要Procfile
。
如果你真的需要JEE功能,你需要使用像Wildfly Swarm这样的东西。但是如果你只需要一个Servlet容器,那么就可以使用webapp-runner。