我在Java 1.7中使用Play框架。
上次部署时间:
----->播放!检测到应用
----->安装OpenJDK 1.7 ...已完成
----->建筑游戏!应用...
这次部署:
----->播放!检测到应用 / app / tmp / buildpacks / 85dfc1d8f48aec0b42f03a59461dc516a918eb099c9e908767a7f42ddf326e12e48c6030ff4891e5c63f08e3b760ea09dee5bbfa4ca293b152d266406bfa29b3 / bin / compile: 第31行:detect_java_version:找不到命令
----->安装OpenJDK ... / app / tmp / buildpacks / 85dfc1d8f48aec0b42f03a59461dc516a918eb099c9e908767a7f42ddf326e12e48c6030ff4891e5c63f08e3b760ea09dee5bbfa4ca293b152d266406bfab29 第34行:jdk_overlay:找不到命令
----->建筑游戏!应用...
所以在错误日志之后
OpenJDK 64位服务器VM警告:忽略选项UseSplitVerifier; 在8.0中删除了支持 编译器Oracle:排除jregex / Pretokenizer.next 在地址8000上侦听传输dt_socket 08:52:08,455 INFO〜起始/ tmp / build_bedf10ee7c8222565973235fe2454700 08:52:10,049 INFO〜预编译... 08:53:02,606错误〜
@ 7e83895fc 无法以错误的PROD模式启动
糟糕:UnexpectedException 由异常UnexpectedException引起的意外错误:在应用类时 play.classloading.enhancers.LocalvariablesNamesEnhancer在 控制器。应用
play.exceptions.UnexpectedException:在控制器上应用play.CorePlugin@aecb35a时。 在play.plugins.PluginCollection.enhance(PluginCollection.java:556) 在play.classloading.ApplicationClasses $ ApplicationClass.enhance(ApplicationClasses.java:235) 在play.classloading.ApplicationClassloader.loadApplicationClass(ApplicationClassloader.java:167) 在play.classloading.ApplicationClassloader.getAllClasses(ApplicationClassloader.java:431) 在播放.Play.preCompile(Play.java:600) 在播放.Play.init(Play.java:304) 在play.server.Server.main(Server.java:162) 造成原因:play.exceptions.UnexpectedException:应用类play.classloading.enhancers.LocalvariablesNamesEnhancer时 在控制器上 在玩耍时.CorePlugin.enhance(CorePlugin.java:302) 在play.plugins.PluginCollection.enhance(PluginCollection.java:551) ...另外6个 引起原因:java.lang.RuntimeException:java.io.IOException:无效的常量类型:18 在javassist.CtClassType.getClassFile2(CtClassType.java:203) 在javassist.CtClassType.subtypeOf(CtClassType.java:303) 在javassist.bytecode.stackmap.TypeData $ TypeName.update(TypeData.java:274) 在javassist.bytecode.stackmap.TypeData $ TypeName.setType(TypeData.java:203) 在javassist.bytecode.stackmap.TypeData.setType(TypeData.java:46) 在javassist.bytecode.stackmap.Tracer.doInvokeIntfMethod(Tracer.java:828) 在ja ----->玩!检测到应用
如何解决?
答案 0 :(得分:1)
首先,请注意Heroku no longer supports Play 1.x。如果可以,请考虑将应用程序升级到Play 2.x,which is still supported。
但是,您描述的问题has now been fixed。现在不推荐使用的Play 1.x buildpack的依赖性破坏了向后兼容性。重新部署应用程序应该可以正常工作。