2016-09-16 62 views
0

我正在使用'dist'任务来生成我的应用程序的分配。但是,如果我解压缩生成的工件,在bin /目录中,我可以访问'dist'任务生成的bash文件。脚本的最后一行是:运行“$ @”在生产模式下使用分辨率运行应用程序

我在正式的Play Framework文档中看到'run'命令不应该用于生产模式,推荐的方法是生成一个分配任务' DIST”

为什么‘DIST’的产生,其使用bash脚本‘跑’条命令,如果在生产模式下,不建议吗?

我在问这个,因为当我在生产环境中部署我的应用程序时,第一个请求很慢......它似乎是开发行为。但我正在使用'dist'命令。

我将不胜感激任何帮助。

谢谢。

+0

请发布您所指的文件和命令的相关部分。 – Guenther

回答

0

你在混合两种不同的东西。

播放文档中所述的run命令是SBT命令,将在开发模式启动应用程序。因此,要使用该命令,您必须使用激活器或sbt(例如:./activator run)。

run您在脚本看到的是一个bash函数(定义上面一点),将在生产模式下启动应用程序。从功能的小片段:

# Actually runs the script. 
run() { 
    # TODO - check for sane environment 
    # process the combined args, then reset "[email protected]" to the residuals 
    # (...) 
    execRunner "$java_cmd" \ 
    ${java_opts[@]} \ 
    "${java_args[@]}" \ 
    -cp "$(fix_classpath "$app_classpath")" \ 
    "${mainclass[@]}" \ 
    "${app_commands[@]}" \ 
    "${residual_args[@]}" 

    (...) 
} 

所以,如果你使用这个脚本来运行你的应用程序,它会在生产模式下启动。

+0

哦!你是对的。我为这个错误感到抱歉。谢谢您的回答。 –

相关问题