【发布时间】:2014-07-20 08:46:35
【问题描述】:
我正在尝试在Heroku 上部署一个用Scala 编写的Play 应用程序@ 987654321@。在我的本地机器上一切正常,服务器正常启动,编译时没有错误,在Heroku 上部署时出现以下错误:
[错误] /tmp/scala_buildpack_build_dir/target/scala-2.10/src_managed/main/com/my/project/application/action/routes.java:8: 找不到符号
[错误] 符号:类 ReverseApplication
[错误] 位置:包 com.my.project.application.action
[错误] public static final com.my.project.application.action.ReverseApplication Application = new com.my.project.application.action.ReverseApplication();
还有其他非常相似的 ref 包(我的项目中没有),比如这个:
com.my.project.application.action.ref 包不存在
然后我去寻找sbt clean compile stage 命令生成的内容,我发现了这个(routes.class):
package com.my.project.application.job;
public class routes {
public static final com.my.project.application.job.ReverseApplication Application = new com.my.project.application.job.ReverseApplication();
public static class javascript {
public static final com.my.project.application.job.javascript.ReverseApplication Application = new com.my.project.application.job.javascript.ReverseApplication();
}
public static class ref {
public static final com.my.project.application.job.ref.ReverseApplication Application = new com.my.project.application.job.ref.ReverseApplication();
}
}
在找不到 javascript.ReverseApplication 和 ref.ReverseApplication 的地方,还有另一个名为 routes_reverseRouting.scala 的生成文件,其中包含此缺少的包,但在编译和暂存时未在 routes.class 中导入。我错过了什么吗?上次部署时(大约一周前)我没有遇到这个问题。
我正在使用scala v2.10.3 和sbt v13.0。
【问题讨论】:
标签: java scala heroku deployment