【发布时间】:2017-12-12 08:49:34
【问题描述】:
注意:我最近加入了 Play Framework,所以我还在学习它
我正在尝试使用 Play Framework 创建一个简单的 Web 应用程序。\
(编辑)软件版本:
- Arch Linux:4.11.7-1-ARCH x64
- Oracle Java JDK:1.8.0_131
- IntelliJ Scala 插件:2017.1.19(最新)
- SBT:0.13.13(最新)
- IntelliJ IDEA Ultimate 2017.1.4
- 播放框架:2.6.1
我做了什么:
我按照 Jetbrains 网站上的 this 教程开始了一个 Play Framework 项目。我完全按照说明进行操作。
- 我安装了 Scala 插件
- 已创建新项目 > Scala > Play 2.x(图中显示的是 Scala、Dotty、SBT、Activator、Play 2.x。我的选项是 SBT、IDEA、Activator、Play 2.x)
- 项目详细信息页面看起来相似,使用
Scala 2.11和Play 2.6.1和Java JDK 1.8.0_131
问题:
- 单击完成,我希望看到下一个显示项目目录结构的图像。只显示 3 个条目:
.gitignore文件、build文件和外部库
由于出现问题,我决定导入项目,这样做时,通过选择 SBT 项目模型我得到一个导入错误:
导入错误:
Error:Error while importing SBT project:<br/>...<br/><pre>at sbt.Using.apply(Using.scala:25)
at sbt.MainLoop$.runWithNewLog(MainLoop.scala:66)
at sbt.MainLoop$.runAndClearLast(MainLoop.scala:49)
at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:33)
at sbt.MainLoop$.runLogged(MainLoop.scala:25)
at sbt.StandardMain$.runManaged(Main.scala:57)
at sbt.xMain.run(Main.scala:29)
at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
a
t xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
at xsbt.boot.Launch$.run(Launch.scala:109)
at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
at xsbt.boot.Launch$.launch(Launch.scala:117)
at xsbt.boot.Launch$.apply(Launch.scala:18)
at xsbt.boot.Boot$.runImpl(Boot.scala:41)
at xsbt.boot.Boot$.main(Boot.scala:17)
at xsbt.boot.Boot.main(Boot.scala)
[error] java.lang.NoClassDefFoundError: sbt/TrackLevel
[error] Use 'last' for the full log.
Invalid response.</pre><br/>See complete log in <a href="file:/home/cybex/.IntelliJIdea2017.1/system/log/sbt.last.log">file:/home/cybex/.IntelliJIdea2017.1/system/log/sbt.last.log</a>
我没发现有同样的问题。
我尝试了什么:
我搜索了一个类似的issue,只是提到删除~/.sbt和~/.ivy2文件夹。我这样做了,但它没有解决任何问题。
我继续重新导入同一个项目,这次它重新下载了 sbt 和 ivy 包,并在 IntelliJ 的项目窗口中显示了文件夹/项目结构
打开sbt菜单/工具并导入/刷新所有项目时,再次打印上述导入错误。
问题:
这是什么原因,缺少库,导入时缺少复选框?
更新:
我设法通过使用PlayFramework 2.6.1 New application 中描述的方法使项目工作。
我启动了一个终端,浏览到我的项目需要的位置,运行
sbt new playframework/play-java-seed.g8,当出现提示时,我输入了项目名称、组织、scala 版本等。然后我打开了 intellij,使用 SBT 项目模型导入了这个项目(项目名称,在里面我运行了
sbt new ...命令)。下载并检查依赖项后,它显示了项目结构,虽然缺少一些文件夹,如sbt-build目录(在示例播放项目中看到)。
打开 SBT 项目工具栏,点击刷新,成功导入所有项目,并按预期显示。
结论:
Jetbrains IntelliJ 网站上的文档可能不准确,因为我的 scala 版本是相同的。唯一不同的是Java JDK版本,我相信这需要确认。
【问题讨论】:
-
你使用的是哪个 sbt 版本?
-
@Salem sbt 0.13.13
标签: java scala intellij-idea playframework sbt