IDEA运行报错:Error:Internal error: (java.net.MalformedURLException) unknown protocol:

Error:Internal error: (java.net.MalformedURLException) unknown protocol: jrt
java.net.MalformedURLException: unknown protocol: jrt
at java.net.URL.(URL.java:421)
at java.net.URL.(URL.java:310)
at java.net.URL.(URL.java:333)
at com.intellij.compiler.instrumentation.InstrumentationClassFinder.createJDKPlatformUrl(InstrumentationClassFinder.java:61)
at org.jetbrains.jps.incremental.instrumentation.ClassProcessingBuilder.createInstrumentationClassFinder(ClassProcessingBuilder.java:125)
at org.jetbrains.jps.incremental.instrumentation.ClassProcessingBuilder.build(ClassProcessingBuilder.java:93)
at org.jetbrains.jps.incremental.IncProjectBuilder.runModuleLevelBuilders(IncProjectBuilder.java:1246)
at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:923)
at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:995)
at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:886)
at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:719)
at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:371)
at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:178)
at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:138)
at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:308)
at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:138)
at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:235)
at org.jetbrains.jps.service.impl.SharedThreadPoolImpl.lambda$executeOnPooledThread$0(SharedThreadPoolImpl.java:42)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Please perform full project rebuild (Build | Rebuild Project)

我也遇到了同样的问题,Intellij 中用到的编译器(javac)是自带的,Intellij的版本低的话对应的javac版本就低,我的是2017的javac的版本最高到9,可以在File->project structure->project 中的Project Language level查看和设置编译器版本,也可以在File->settings->Build,Execution,Deployment->complier->java complier下的(Project bytecode version)查看和设置编译器版本,project bytecode version和project language level本质是一样的,都是为了设置编译器版本,就是javac的版本,这是和Intellij的版本挂钩的,所以我们用到高版本的jdk时,Intellij版本较低,有可能没有对应的编译器版本,所以就会出现低版本的javac编译,高版本的执行,就会出现错误.而且这里并不是向下兼容的问题,向下兼容必须确保编译器和jre对的上.

https://blog.csdn.net/u014793936/article/details/44947533?utm_source=blogxgwz8

问题在于正在处理的特定项目的语言级别。我的猜测是你运行的是旧版本的IntelliJ。如果是这样,需要先更新它。更新后需要安装Java 11 jdk(如果尚未安装),然后打开项目并通过以下方式更改语言级别:

右键单击项目>打开模块设置[F4]>选择11作为“语言级别”
如果将完全使用Java 11,还可以通过以下方式更改默认语言级别:

单击文件>其他设置>新项目的结构>项目语言级别> 11

如有帮助,请采纳