Intellij不编译Play 2.4应用程序:模块’root’生产:java.lang.NullPointerException

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

这是我点击make后得到的:

《Intellij不编译Play 2.4应用程序:模块’root’生产:java.lang.NullPointerException》

我在〜/ .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
>清除常春藤缓存
>清除IntelliJ缓存
>删除.idea和目标目录并再次导入项目
>删除了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上打开项目并使用[右键单击]>运行Play 2 App,它也可以运行.但是,如果我尝试在IntelliJ上进行制作,重建,调试或运行测试,我就会收到该错误.

我将感谢你的帮助.

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

最佳答案 为了以防万一,这是我用来解决这个问题的解决方法,正如我在 https://youtrack.jetbrains.com/issue/SCL-9780上记录的那样

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

无论如何,如果你有Ultimate 2016.1或更高版本,你应该没问题.

点赞