Intellij没有编译Play 2.4应用程序:模块' root' production:java.lang.NullPointerException

时间:2016-01-20 20:53:49

标签: java intellij-idea playframework nullpointerexception

我使用IntelliJ 15.0.2 Ultimate开发Play 2.4.6应用程序。一切都很好,直到上周五IntelliJ被打破,我不知道为什么。真的,我不知道这是我升级的东西还是我改变的东西。

这是我点击make后得到的:

enter image description here

我在~/.IntelliJIdea15/system/log/build-log/build.log上有这个:

2016-01-20 16:25:17,025 [  27009]   INFO - .incremental.IncProjectBuilder - Module 'root' production: java.lang.NullPointerException
org.jetbrains.jps.incremental.ProjectBuildException: Module 'root' production: java.lang.NullPointerException
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1005)
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:870)
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:695)
        at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:386)
        at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:193)
        at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:137)
        at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:294)
        at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:125)
        at //[...]

当我尝试制作/ build / rebuld / test应用时,我收到此错误消息。我尝试了一切:

  • 使用最后一个补丁升级Kubuntu 15.10
  • 创建了一个全新且干净的Play应用并导入到IntelliJ
  • 在终端上调用$ activator clean$ activator run
  • 清除常春藤缓存
  • 清除IntelliJ缓存
  • 删除.ideatarget目录并再次导入项目
  • 删除了Java 1.7和1.8并再次安装了1.8
  • 删除了IntellJ 15.0.2和~/.IntelliJIdea15目录
  • 以root用户身份安装IntelliJ 15.0.3 Ultimate,在另一个
  • 上安装为普通用户
  • 已打开build.properties并将sbt.version更改为0.13.7,0.13.8,0.13.9
  • 已打开build.sbt并将scalaVersion更改为2.11.7和2.11.6
  • 已安装sbt

无论如何,$ activator run$ activator test工作正常。如果我在IntelliJ上打开项目并使用[Right click] > Run Play 2 App,它也可以。但如果我尝试在IntelliJ上进行制作,重建,调试或运行测试,我会收到该错误

感谢您的帮助。

更新:此项目在没有问题的情况下编译到同一环境中==> https://github.com/pac4j/play-pac4j-java-demo

1 个答案:

答案 0 :(得分:1)

以防万一,这是我用来解决这个问题的解决方法,正如我在https://youtrack.jetbrains.com/issue/SCL-9780上所记录的

  • 在IDEA上,点击文件>设置>语言与框架> Play2,并禁用“为此项目使用Play 2编译器”
  • 打开终端,转到项目目录并运行 $ activator clean compile test

无论如何,如果您拥有Ultimate 2016.1或更高版本,那么您应该没问题。