【发布时间】:2016-01-22 03:25:01
【问题描述】:
问题:
IntelliJ 不允许我导入 播放框架项目。当我尝试使用 SBT 打开项目时,它只会显示错误。
我想做的事情真的很简单,但我没有使用任何这些工具,我对如何解决这个问题有点迷茫。
我只想创建一个 Play 框架项目,并在 IntelliJ 中对其进行编辑,如 youtube 上的多个教程所示。
下面我提供了一些关于我如何努力使其“帮助你帮助我”的信息。
我真的希望有一些我看不到的简单解决方案!
背景信息:
我已经从 Play Framework 下载并安装了 IntelliJ 14.1.5 社区版和最新的 avtivator - Activator 1.3.6 和 Play 2.4.3强>
注意:我还下载了最新的 java jdk,1.8.0_65 并将 java 和 activator 添加到路径 - 我使用的是 Windows 8。我还在 IntelliJ
中下载了最新的 Scala 插件然后我打开 cmd 并输入“activator ui”并按照教程中的说明在 localhost:8888 打开浏览器。我设法创建了一个“play-java-intro”项目。到目前为止,一切顺利。
在此之后,我尝试了几种不同的方法。
注意:每次尝试新事物时,我都会点击“使缓存无效/重新启动”
第一次尝试
我在通过激活器创建项目后尝试打开项目。我选择了项目的根目录并选择了 SDK jdk 1.7(也尝试过 1.8)。
我收到了错误
导入 SBT 项目时出错:... at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:70) at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:65) at sbt.Using.apply(Using.scala:24)在 sbt.MainLoop$.runWithNewLog(MainLoop.scala:65) 在 sbt.MainLoop$.runAndClearLast(MainLoop.scala:48) 在 sbt.MainLoop$.runLoggedLoop(MainLoop.scala:32) 在 sbt.MainLoop$.runLogged( MainLoop.scala:24) 在 sbt.StandardMain$.runManaged(Main.scala:53) 在 sbt.xMain.run(Main.scala:28) 在 xsbt.boot.Launch$$anonfun$run$1.apply(Launch. scala:109) 在 xsbt.boot.Launch$.withContextLoader(Launch.scala:129) 在 xsbt.boot.Launch$.run(Launch.scala:109) 在 xsbt.boot.Launch$$anonfun$apply$1.apply (Launch.scala:36) 在 xsbt.boot.Launch$.launch(Launch.scala:117) 在 xsbt.boot.Launch$.apply(Launch.scala:19) 在 xsbt.boot.Boot$.runImpl(Boot .scala:44) 在 xsbt.boot.Boot$.main(Boot.scala:20) 在 xsbt.boot.Boot.main(Boot.scala) [错误] java.lang.UnsupportedClassVersionError: com/typesafe/config/ConfigException :不支持major.minor 52.0版[错误]使用'last' 表示完整日志。
日志文件内部:
[info] 从 C:\play-java-intro\project 加载项目定义
[info] 将当前项目设置为 play-java-intro(在构建文件中:/C:/play-java-intro/) java.lang.UnsupportedClassVersionError:com/typesafe/config/ConfigException:不支持的major.minor 52.0版 在 java.lang.ClassLoader.defineClass1(本机方法) 在 java.lang.ClassLoader.defineClass(ClassLoader.java:800) 在 java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 在 java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 在 java.net.URLClassLoader.access$100(URLClassLoader.java:71) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:361) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:355) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.net.URLClassLoader.findClass(URLClassLoader.java:354) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:425) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:358) 在 com.typesafe.sbt.web.SbtWeb$$anonfun$com$typesafe$sbt$web$SbtWeb$$load$1.apply(SbtWeb.scala:535) 在 com.typesafe.sbt.web.SbtWeb$$anonfun$com$typesafe$sbt$web$SbtWeb$$load$1.apply(SbtWeb.scala:535) 在 scala.Option.fold(Option.scala:157) 在 com.typesafe.sbt.web.SbtWeb$.com$typesafe$sbt$web$SbtWeb$$load(SbtWeb.scala:549) 在 com.typesafe.sbt.web.SbtWeb$$anonfun$globalSettings$1$$anonfun$apply$1.apply(SbtWeb.scala:143) 在 com.typesafe.sbt.web.SbtWeb$$anonfun$globalSettings$1$$anonfun$apply$1.apply(SbtWeb.scala:143) 在 scala.Function1$$anonfun$andThen$1.apply(Function1.scala:55) 在 sbt.Project$.setProject(Project.scala:319) 在 sbt.BuiltinCommands$.doLoadProject(Main.scala:484) 在 sbt.BuiltinCommands$$anonfun$loadProjectImpl$2.apply(Main.scala:475) 在 sbt.BuiltinCommands$$anonfun$loadProjectImpl$2.apply(Main.scala:475) 在 sbt.Command$$anonfun$applyEffect$1$$anonfun$apply$2.apply(Command.scala:58) 在 sbt.Command$$anonfun$applyEffect$1$$anonfun$apply$2.apply(Command.scala:58) 在 sbt.Command$$anonfun$applyEffect$2$$anonfun$apply$3.apply(Command.scala:60) 在 sbt.Command$$anonfun$applyEffect$2$$anonfun$apply$3.apply(Command.scala:60) 在 sbt.Command$.process(Command.scala:92) 在 sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:98) 在 sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:98) 在 sbt.State$$anon$1.process(State.scala:184) 在 sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:98) 在 sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:98) 在 sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17) 在 sbt.MainLoop$.next(MainLoop.scala:98) 在 sbt.MainLoop$.run(MainLoop.scala:91) 在 sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:70) 在 sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:65) 在 sbt.Using.apply(Using.scala:24) 在 sbt.MainLoop$.runWithNewLog(MainLoop.scala:65) 在 sbt.MainLoop$.runAndClearLast(MainLoop.scala:48) 在 sbt.MainLoop$.runLoggedLoop(MainLoop.scala:32) 在 sbt.MainLoop$.runLogged(MainLoop.scala:24) 在 sbt.StandardMain$.runManaged(Main.scala:53) 在 sbt.xMain.run(Main.scala:28) 在 xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109) 在 xsbt.boot.Launch$.withContextLoader(Launch.scala:129) 在 xsbt.boot.Launch$.run(Launch.scala:109) 在 xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:36) 在 xsbt.boot.Launch$.launch(Launch.scala:117) 在 xsbt.boot.Launch$.apply(Launch.scala:19) 在 xsbt.boot.Boot$.runImpl(Boot.scala:44) 在 xsbt.boot.Boot$.main(Boot.scala:20) 在 xsbt.boot.Boot.main(Boot.scala) [错误] java.lang.UnsupportedClassVersionError:com/typesafe/config/ConfigException:不支持的major.minor版本52.0 [错误] 使用 'last' 作为完整日志。
我试图搜索这意味着什么,但我在谷歌上找到的答案不适用于我的问题。
我尝试选择和取消选择 SBT 中的所有选项 - 使用自动导入、下载源和文档等。但仍然出现相同的错误消息。
第二次尝试
与第一次尝试类似,但我在 localhost:8888 的激活器中单击“创建 IntelliJ 项目”,然后尝试使用与 第一次尝试相同的方法导入项目。
第三次尝试
打开项目并选择根目录,我设法导入了该项目,但它已将项目文件移动到“项目备份”,并且我收到很多警告说它基于过时的版本.这个不太明白。
第四次尝试
在 activator 创建项目后,从现有来源创建项目,我在没有警告的情况下导入了项目。
但是当我打开 Application.java (或 any 其他文件)时,该文件中的所有内容都带有红色下划线,并带有类似于“无法解析符号'结果'”,我无法编译任何东西。
我尝试打开模块并点击+并将Scala添加为模块,但似乎没有任何区别。
我真的希望有人可以帮助我,因为安装 IntelliJ + Play 框架应该是一件相当容易的事情。
【问题讨论】:
-
你不是忘记启用 scala 插件了吗?您可以下载它,但将其禁用,所以只需检查一下。这是一个很好的屏幕指南:jetbrains.com/idea/help/…
标签: scala intellij-idea playframework sbt playframework-2.4