Tad*_*dis 1 scala intellij-idea sbt playframework playframework-2.4
IntelliJ不让我导入一个play框架项目.当我尝试使用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
然后我打开cmd并键入" activator ui "并按照教程中的说明在localhost:8888打开浏览器.我设法创建了一个" play-java-intro "项目.到现在为止还挺好.
在此之后,我尝试了一些不同的方法.
注意:每次尝试新的时候,我都点击了"无效缓存/重启"
我通过激活器创建项目后尝试打开项目.我选择了项目的根目录并选择了SDK jdk 1.7(已尝试过1.8).
我收到了错误
导入SBT项目时出错:...在sbt.MainLoop $$ anonfun $ runWithNewLog $ 1.apply(MainLoop.scala:70)sbt.MainLoop $$ anonfun $ runWithNewLog $ 1.apply(MainLoop.scala:65)at sbt.在sbt.MainLoop $ .runWithNewLog(MainLoop.scala:65)sbt.MainLoop $ .runAndClearLast(MainLoop.scala:48)sbt.MainLoop $ .runLoggedLoop(MainLoop.scala:)使用.apply(Using.scala:24) 32)at sbt.MainLoop $ .runLogged(MainLoop.scala:24)at sbt.StandardMain $ .runManaged(Main.scala:53)at sbt.xMain.run(Main.scala:28)at xsbt.boot.Launch $ $ anonfun $ run $ 1.apply(Launch.scala:109)at xsbt.boot.Launch $ .withContextLoader(Launch.scala:129)at xsbt.boot.Launch $ .run(Launch.scala:109)at xsbt.boot .Launch $$ anonfun $应用$ 1.apply(Launch.scala:36)在xsbt.boot.Launch $ .launch(Launch.scala:117)xsbt.boot.Launch $ .apply(Launch.scala:19)at at xsbt.boot.Boot $ .runImpl(Boot.scala:44)位于xsbt.boot.Boot $.main(Boot.scala:20)at xsbt.boot.Boot.main(Boot.scala)[error] java.lang.UnsupportedClassVersionError:com/typesafe/config/ConfigException:Unsupported major.minor version 52.0 [error]使用'last '为完整的日志.
在日志文件中:
[info]从C:\ play-java-intro\project加载项目定义
[info]将当前项目设置为play-java-intro(在构建文件中:/ C:/ play-java-intro /)java.lang.UnsupportedClassVersionError:com/typesafe/config/ConfigException:java上不支持的major.minor版本52.0 .lang.ClassLoader.defineClass1(本机方法),位于java.security.ClassLoader.defineClass(ClassLoader.java:800),位于java.net.URLClassLoader.defineClass(URLClassLoader)的java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) .java:449)java.net.URLClassLoader.access $ 100(URLClassLoader.java:71)java.net.URLClassLoader $ 1.run(URLClassLoader.java:361)at java.net.URLClassLoader $ 1.run(URLClassLoader.java) :355)at java.security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(URLClassLoader.java:354)at java.lang.ClassLoader.loadClass(ClassLoader.java:425)at java.lang.ClassLoader.loadClass(ClassLoader.java:358)at com.typesafe.sbt.web.SbtWeb $$ anonfun $ com $ typesafe $ sbt $ web $ SbtWeb $$ load $ 1 .apply(SbtWeb.scala:535)at com.typesafe.sbt.web.SbtWeb $$ anonfun $ com $ typesafe $ sbt $ web $ SbtWeb $$在scala.Option上加载$ 1.apply(SbtWeb.scala:535).折扣(Option.scala:157)at com.typesafe.sbt.web.SbtWeb $ .com $ typesafe $ sbt $ web $ SbtWeb $$ load(SbtWeb.scala:549)at com.typesafe.sbt.web.SbtWeb $ $ anonfun $ globalSettings $ 1 $$ anonfun $ apply $ 1.apply(SbtWeb.scala:143)at com.typesafe.sbt.web.SbtWeb $$ anonfun $ globalSettings $ 1 $$ anonfun $ apply $ 1.apply(SbtWeb.scala:143 )在scala.Function1 $$ anonfun $ andThen $ 1.apply(Function1.scala:55)at sbt.Project $ .setProject(Project.scala:319)at sbt.BuiltinCommands $ .doLoadProject(Main.scala:484)at sbt .在sbt.BuiltinCommands上的BuiltinCommands $$ anonfun $ loadProjectImpl $ 2.apply(Main.scala:475)$$ anonfun $ loadProjectImpl $ 2.apply(Main.scala:475)at sbt.Command $$ anonfun $ applyEffect $ 1 $$ anonfun $ apply $ 2.apply(Command.scala:58)at sbt.Command $$ anonfun $ applyEffect $ 1 $$ anonfun $ apply $ 2.apply(Command.scala:58)at sbt.Command $$ anonfun $ applyEffect $ 2 $$ anonfun $ apply $ 3.apply(Command.scala:60)at sbt.Command $$ anonfun $ applyEffect $ 2 $$ anonfun $ apply $ 3.apply(Command.scala:60)at sbt.Command $ .process(Command.scala:92)at at sbt.MainLoop $$ anonfun $ 1 $$ anonfun $ apply $ 1.apply(MainLoop.scala:98)at sbt.MainLoop $$ anonfun $ 1 $$ anonfun $ apply $ 1.apply(MainLoop.scala:98)at sbt.State $ $ anon $ 1.process(State.scala:184)at sbt.MainLoop $$ anonfun $ 1.apply(MainLoop.scala:98)at sbt.MainLoop $$ anonfun $ 1.apply(MainLoop.scala:98)at sbt.ErrorHandling $ .wideConvert(ErrorHandling.scala:17)at sbt.MainLoop $ .next(MainLoop.scala:98)at sbt.MainLoop $ .run(MainLoop.scala:91)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)at sbt.MainLoop $ .runWithNewLog(MainLoop.scala:65)at sbt.MainLoop $ .runAndClearLast(MainLoop.scala:48)at sbt.MainLoop $ .runLoggedLoop(MainLoop.scala:32)at sbt.MainLoop $ .runLogged(MainLoop.scala:24) )sbt.StandardMain $ .runManaged(Main.scala:53)at sbt.xMain.run(Main.scala:28)at xsbt.boot.Launch $$ anonfun $ run $ 1.apply(Launch.scala:109)at at xsbt.boot.Launch $ .withContextLoader(Launch.scala:129)位于xsbt.boot上的xsbt.boot.Launch $ .run(Launch.scala:109).启动$$ anonfun $在xsbt.boot.Launch $ .launch(Launch.scala:117)的xsbt.boot.Launch $ .apply(Launch.scala:19)xsbt上应用$ 1.apply(Launch.scala:36) .boot.Boot $ .runImpl(Boot.scala:44)at xsbt.boot.Boot $ .main(Boot.scala:20)at xsbt.boot.Boot.main(Boot.scala)[error] java.lang. UnsupportedClassVersionError:com/typesafe/config/ConfigException:不支持的major.minor版本52.0 [错误]使用'last'作为完整日志.0 [错误]使用'last'作为完整日志.0 [错误]使用'last'作为完整日志.
我试图搜索这意味着什么,但我在谷歌上找到的答案不适用于我的问题.
我试图选择并取消选择SBT中的所有选项 - 使用自动导入,下载源和文档等.但仍然是相同的错误消息.
与第一次尝试类似,但我在localhost:8888中单击激活器内的" 创建IntelliJ项目 ",然后尝试以与第一次尝试相同的方法导入项目.
打开项目并选择根目录,我设法稍微导入项目,但它将项目文件移动到"项目备份",我收到很多警告,说它基于过时的版本.不太明白这一点.
在激活器上创建项目后,从现有源创建项目,我在没有警告的情况下导入了项目.
但是,当我打开Application.java(或任何其他文件)时,该文件中的所有内容都会被红色下划线,并显示类似于" 无法解析符号'结果'的错误,而且我无法编译任何内容.
我试图打开模块并单击+并添加Scala作为模块,但它似乎没有任何区别.
我真的希望有人可以帮助我,因为安装IntelliJ + Play框架应该是一件相当容易的事情.
问题是即使IntelliJ设置为使用JDK8,SBT进程也使用JDK7(您可以确认使用类似的工具查看它JVisualVM).不确定他们采用SBT的JVM的逻辑是什么,但是你可以在导入项目时强制它:

这个版本的想法为我解决了这个问题:

| 归档时间: |
|
| 查看次数: |
1197 次 |
| 最近记录: |