Heroku上的Spring Boot Gradle应用程序:无法访问jarfile
我有一个spring boot gradle应用程序,可以通过以下操作在PC上成功运行:
heroku local
我也可以在heroku上成功部署它:
git push heroku master
这是我的结果:
Counting objects: 17, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (9/9), 596 bytes | 0 bytes/s, done.
Total 9 (delta 3), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Fetching set buildpack https://github.com/heroku/heroku-buildpack-gradle... done
remote: -----> Gradle app detected
remote: -----> Installing OpenJDK 1.8... done
remote: -----> Building Gradle app...
remote: WARNING: The Gradle buildpack is currently in Beta.
remote: -----> executing ./gradlew build
remote: :compileJavaNote: Some input files use unchecked or unsafe operations.
remote: Note: Recompile with -Xlint:unchecked for details.
remote:
remote: :processResources
remote: :classes
remote: :jar
remote: :bootRepackage
remote: :assemble
remote: :compileTestJava UP-TO-DATE
remote: :processTestResources UP-TO-DATE
remote: :testClasses UP-TO-DATE
remote: :test UP-TO-DATE
remote: :check UP-TO-DATE
remote: :build
remote:
remote: BUILD SUCCESSFUL
remote:
remote: Total time: 11.935 secs
remote:
remote: -----> Discovering process types
remote: Procfile declares types -> web
remote:
remote: -----> Compressing... done, 72.3MB
remote: -----> Launching... done, v9
remote: https://myapp.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy... done.
To https://git.heroku.com/myapp.git
6326429..291326d master -> master
但是,当我尝试在heroku上访问它时,它崩溃了。heroku日志说:
2015-12-11T17:05:46.096985+00:00 heroku[api]: Deploy 291326d by xxx@gmail.com
2015-12-11T17:05:46.097021+00:00 heroku[api]: Release v9 created by xxx@gmail.com
2015-12-11T17:05:46.378258+00:00 heroku[slug-compiler]: Slug compilation started
2015-12-11T17:05:46.378269+00:00 heroku[slug-compiler]: Slug compilation finished
2015-12-11T17:05:46.755655+00:00 heroku[web.1]: State changed from crashed to starting
2015-12-11T17:05:53.121398+00:00 heroku[web.1]: Starting process with command `java -Dserver.port=5000 -jar build/libs/myapp.jar`
2015-12-11T17:05:54.260741+00:00 app[web.1]: Error: Unable to access jarfile build/libs/myapp.jar
2015-12-11T17:05:54.784064+00:00 heroku[web.1]: State changed from starting to crashed
2015-12-11T17:05:54.773714+00:00 heroku[web.1]: Process exited with status 1
2015-12-11T17:05:54.788248+00:00 heroku[web.1]: State changed from crashed to starting
为什么呢Unable to access jarfile build/libs/myapp.jar
?
当我导航到本地PC上的该文件夹时,jarfile就在其中。
我没有解决该问题的想法。
-
我最终在这里找到了一个非常有用的线程:在Heroku上运行使用gradle构建的Spring应用程序
这帮助了我解决我的问题-该线程似乎比Heroku的官方指南更详细。
您必须将以下代码添加到build.gradle文件中:
task stage(type: Copy, dependsOn: [clean, build]) { from jar.archivePath into project.rootDir rename { 'app.jar' } } stage.mustRunAfter(clean) clean << { project.file('app.jar').delete() }
然后,将您的Procfile指向app.jar:
web: java $JAVA_OPTS -jar app.jar
-
在tomcat中部署后无法访问Spring Boot应用程序
2021-02-02 关注 0 浏览112 1答案
-
Gradle Maven-publish无法构建独立的Spring-boot应用程序
2021-02-02 关注 0 浏览76 1答案
-
Spring Boot:无法访问localhost上的REST Controller(404)
2021-02-02 关注 0 浏览283 1答案
-
Spring Boot:无法访问localhost上的REST Controller(404)
2021-01-31 关注 0 浏览82 1答案
-
Spring Boot Actuator应用程序无法在Ubuntu VPS上启动
2021-02-02 关注 0 浏览80 1答案
-
Spring Boot Actuator应用程序无法在Ubuntu VPS上启动
2021-01-31 关注 0 浏览62 1答案
-
带有Spring Boot REST应用程序的OAuth2-无法使用令牌访问资源
2021-02-02 关注 0 浏览83 1答案
-
Google App Engine Go 1.11应用程序无法访问Google Spreadsheets
2021-02-01 关注 0 浏览127 1答案
-
Gradle构建Spring Boot应用程序与有效配置文件进行战争
2021-02-02 关注 0 浏览75 1答案
-
从Eclipse运行时无法访问Tomcat 7 Manager应用程序
2021-02-01 关注 0 浏览112 1答案