§设置您喜欢的 IDE
使用 Play 很容易。您甚至不需要复杂的 IDE,因为 Play 会自动编译和刷新您对源文件所做的修改,因此您可以轻松地使用简单的文本编辑器进行工作。
但是,使用现代 Java 或 Scala IDE 可以提供诸如自动完成、即时编译、辅助重构和调试等酷炫的生产力功能。
§Eclipse
§设置 sbt-eclipse
与 Eclipse 集成需要 sbt-eclipse。确保始终在您的 project/plugins.sbt 文件中使用 最新的可用版本,或者按照 sbt-eclipse 文档 进行全局安装。
addSbtPlugin("com.github.sbt" % "sbt-eclipse" % "6.2.0")
您必须在运行 eclipse
命令之前 compile
您的项目。您可以在运行 eclipse
命令时强制编译,方法是在 build.sbt 中添加以下设置
// Compile the project before generating Eclipse files, so
// that generated .scala or .class files for views and routes are present
EclipseKeys.preTasks := Seq(Compile / compile, Test / compile)
如果您的项目中包含 Scala 源代码,则需要安装 Scala IDE。
如果您不想安装 Scala IDE 并且项目中只有 Java 源代码,那么您可以设置以下 build.sbt(假设您没有 Scala 源代码)
// Java project. Don't expect Scala IDE
EclipseKeys.projectFlavor := EclipseProjectFlavor.Java
// Use .class files instead of generated .scala files for views and routes
EclipseKeys.createSrc := EclipseCreateSrc.ValueSet(EclipseCreateSrc.ManagedClasses, EclipseCreateSrc.ManagedResources)
§生成配置
配置 sbt-eclipse 后,要将 Play 应用程序转换为可工作的 Eclipse 项目,请使用 eclipse
命令
[my-first-app] $ eclipse
如果您想获取可用的源 jar 文件(这将花费更长时间,并且可能缺少一些源文件)
[my-first-app] $ eclipse with-source=true
注意:如果您使用具有聚合的子项目,则需要在
build.sbt
中适当地设置skipParents
ThisBuild / EclipseKeys.skipParents := false
或者从 sbt shell 中,键入
[my-first-app] $ eclipse skip-parents=false
然后,您需要使用 文件/导入/常规/现有项目… 菜单将应用程序导入您的工作区(先编译您的项目)。
要进行调试,请使用 sbt -jvm-debug 9999 run
启动您的应用程序,并在 Eclipse 中右键单击该项目,然后选择 调试方式,调试配置。在 调试配置 对话框中,右键单击 远程 Java 应用程序,然后选择 新建。将 端口 更改为 9999,然后单击 应用。从现在开始,您可以单击 调试 以连接到正在运行的应用程序。停止调试会话不会停止服务器。
提示:您可以使用
~run
运行您的应用程序,以在文件更改时启用直接编译。这样,当您在view
中创建新模板时,scala 模板文件会自动被发现,并且在文件更改时会自动编译。如果您使用普通的run
,则每次都需要在浏览器中点击刷新
。
如果您对应用程序进行了任何重要的更改,例如更改类路径,请再次使用eclipse
重新生成配置文件。
提示:在团队合作时,不要提交 Eclipse 配置文件。为了方便起见,请将以下几行添加到您的
.gitignore
文件中/.classpath /.project /.settings
生成的配置文件包含对框架安装的绝对引用。这些是特定于您自己的安装的。在团队合作时,每个开发人员都必须将他们的 Eclipse 配置文件保密。
§IntelliJ IDEA
Intellij IDEA 允许您快速创建 Play 应用程序,无需使用命令提示符。您无需在 IDE 之外进行任何配置,sbt 构建工具会负责下载合适的库、解析依赖项和构建项目。
在您开始在 IntelliJ IDEA 中创建 Play 应用程序之前,请确保已安装并启用了最新的 Scala 插件。即使您没有使用 Scala 进行开发,它也会帮助您使用模板引擎、解析依赖项以及总体上设置项目。
要创建 Play 应用程序
- 打开新建项目向导,在Scala部分下选择sbt,然后单击下一步。
- 输入您的项目信息,然后单击完成。
您也可以导入现有的 Play 项目。
要导入 Play 项目
- 打开项目向导,选择导入项目。
- 在打开的窗口中,选择要导入的项目,然后单击确定。
- 在向导的下一页上,选择从外部模型导入项目选项,选择sbt 项目,然后单击下一步。
- 在向导的下一页上,选择其他导入选项,然后单击完成。
检查项目的结构,确保已下载所有必要的依赖项。您可以使用代码辅助、导航和即时代码分析功能。
您可以运行创建的应用程序,并在默认浏览器中查看结果 http://localhost:9000。要运行 Play 应用程序
- 创建一个新的运行配置 - 从主菜单中,选择运行 -> 编辑配置
- 点击 + 添加一个新的配置
- 从配置列表中,选择“sbt 任务”
- 在“任务”输入框中,只需输入“run”
- 应用更改并选择确定。
- 现在您可以从主运行菜单中选择“运行”并运行您的应用程序
您可以使用默认的运行/调试配置设置轻松地为 Play 应用程序启动调试会话。
有关更详细的信息,请参阅以下 URL 的 Play Framework 2.x 教程
https://www.jetbrains.com/idea/help/getting-started-with-play-2-x.html
§从错误页面导航到源代码
使用 play.editor
配置选项,您可以设置 Play 以将超链接添加到错误页面。这将链接到 Play 在开发模式下运行时抛出的运行时异常。
您可以通过使用 IntelliJ 的“远程文件”REST API 与内置的 IntelliJ Web 服务器(端口 63342)一起使用,轻松地从错误页面直接导航到 IntelliJ 中的源代码。
在 application.conf
中启用以下行以提供超链接
play.editor="http://localhost:63342/api/file/?file=%s&line=%s"
您也可以从 build.sbt
设置 play.editor
javaOptions += "-Dplay.editor=http://localhost:63342/api/file/?file=%s&line=%s"
或设置 PLAY_EDITOR 环境变量
PLAY_EDITOR="http://localhost:63342/api/file/?file=%s&line=%s"
§NetBeans
§生成配置
Play 目前没有原生 NetBeans 项目生成支持,但有一个用于 NetBeans 的 Scala 插件,可以帮助您使用 Scala 语言和 sbt
https://github.com/dcaoyuan/nbscala
还有一个 sbt 插件可以创建 NetBeans 项目定义
https://github.com/dcaoyuan/nbsbt
§所有 Scala 插件(如果需要)
- Eclipse Scala IDE: http://scala-ide.org/
- NetBeans Scala 插件: https://github.com/dcaoyuan/nbscala
- IntelliJ IDEA Scala 插件: https://blog.jetbrains.com/scala/
- ENSIME - Scala IDE 模式 for Emacs: https://github.com/ensime/ensime-emacs
下一步: Hello World 教程
发现此文档中的错误?此页面的源代码可以在 此处 找到。阅读完 文档指南 后,请随时贡献一个拉取请求。有疑问或建议要分享?前往 我们的社区论坛 与社区开始对话。