当我尝试一个涉及compileKotlin
(或compileTestKotlin
)的任务时,我收到了这个警告,结果是 * 构建过程持续时间长 *:
无法执行增量编译:无法连接到Kotlin编译守护进程
无法连接到Kotlin守护程序。使用后备策略。
我不确定这个问题是否与我的操作系统(Windows)有关,但我在一台装有Linux操作系统的远程机器上有相同的项目(带有同步文件),那里不存在这个问题。参见下面的比较:
1.我的远程机器(Linux)上的项目,对Kotlin源代码做了一点更改(在一个模块中):
$ ./gradlew build
Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.0/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 5s
46 actionable tasks: 17 executed, 29 up-to-date
1.在我的本地计算机(Windows)上有相同的项目,具有相同的更改:
> gradlew build
> Task :backend:compileKotlin
Could not perform incremental compilation: Could not connect to Kotlin compile daemon
Could not connect to kotlin daemon. Using fallback strategy.
warning: the '-d' option with a directory destination is ignored because '-Xbuild-file' is specified
Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.0/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 14s
46 actionable tasks: 17 executed, 29 up-to-date
特别是在上面两个示例中的构建持续时间(以及 * Windows机器上compileKotlin
任务后的警告 *)。尽管我的本地机器(Windows)有更强大的硬件,但结果却相反(Gradle守护程序在两者上都运行)。
为了进一步分析,我还在两台机器上发布了gradle -v
和java -version
的输出:
1.Linux:
$ ./gradlew -v
------------------------------------------------------------
Gradle 5.0
------------------------------------------------------------
Build time: 2018-11-26 11:48:43 UTC
Revision: 7fc6e5abf2fc5fe0824aec8a0f5462664dbcd987
Kotlin DSL: 1.0.4
Kotlin: 1.3.10
Groovy: 2.5.4
Ant: Apache Ant(TM) version 1.9.13 compiled on July 10 2018
JVM: 11.0.1 (Oracle Corporation 11.0.1+13)
OS: Linux 3.10.0-862.11.6.el7.x86_64 amd64
$ java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
1.Windows:
> gradlew -v
------------------------------------------------------------
Gradle 5.0
------------------------------------------------------------
Build time: 2018-11-26 11:48:43 UTC
Revision: 7fc6e5abf2fc5fe0824aec8a0f5462664dbcd987
Kotlin DSL: 1.0.4
Kotlin: 1.3.10
Groovy: 2.5.4
Ant: Apache Ant(TM) version 1.9.13 compiled on July 10 2018
JVM: 11.0.1 (Oracle Corporation 11.0.1+13)
OS: Windows 10 10.0 amd64
> java -version
openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment 18.9 (build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)
两台机器上的全局gradle.properties
文件完全相同(并且没有poject-local gradle.properties
文件):
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx1536m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
(无评论)
更新1:
Gradle JVM设置为JDK 8
时没有问题。但是对于JDK 9+
,你可以看到这个问题。
更新2:
我更新了我的Kotlin插件从1.3.10
到1.3.11
。测试1.3.20-eap-52
。但问题依然存在。
更新3:
我使用--debug
选项运行Gradle的compileKotlin
任务以获取更多信息。输出中最重要的部分是:
- 注意:以下任务是在Gradle守护进程运行时运行的,Kotlin编译守护进程已停止(如果已经在运行),并且Kotlin源代码中做了一些更改。*
一.使用JDK 8作为Gradle的JVM时(OK):
11:01:44 PM: Executing task 'compileKotlin --debug'...
...
22:58:20.512 [DEBUG] [org.gradle.api.Project] [KOTLIN] Kotlin compiler args: -Xadd-compiler-builtins -Xbuild-file=C:\Users\I\AppData\Local\Temp\kjps3085207010700515672GradleKotlinJVM.script.xml -classpath D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jdk8\1.3.10\71d0fa967493eb76648b575edf1762cb2d0c7f10\kotlin-stdlib-jdk8-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jdk7\1.3.10\4d147bf43060dc43d61b096e24da1e67dfe0c032\kotlin-stdlib-jdk7-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar -d D:\Devel\IdeaProjects\GradleKotlinJVM\build\classes\kotlin\main -jvm-target 1.8 -Xload-builtins-from-dependencies -module-name GradleKotlinJVM -no-reflect -no-stdlib -Xplugin=D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-scripting-compiler-embeddable\1.3.10\e96a6125793c4ab0258119fcdce9d182f42d32b0\kotlin-scripting-compiler-embeddable-1.3.10.jar -verbose
...
22:58:33.515 [INFO] [org.gradle.api.Task] i: found daemon on port 17519 (270393 ms old), trying to connect
22:58:33.515 [INFO] [org.gradle.api.Task] i: cannot connect to registry: Connection refused: connect
22:58:33.515 [INFO] [org.gradle.api.Task] i: found fresh run file 'C:\Users\I\AppData\Local\kotlin\daemon\kotlin-daemon.2019-01-06T19-23-50.118Z.ef9f56f7564e12d191d0ba8e50b581f8.17519.run' (270393 ms old), but no daemon, ignoring it
22:58:33.515 [INFO] [org.gradle.api.Task] i: found daemon on port 17502 (63606 ms old), trying to connect
22:58:33.515 [INFO] [org.gradle.api.Task] i: cannot connect to registry: Connection refused: connect
22:58:33.515 [INFO] [org.gradle.api.Task] i: found fresh run file 'C:\Users\I\AppData\Local\kotlin\daemon\kotlin-daemon.2019-01-06T19-27-16.900Z.ef9f56f7564e12d191d0ba8e50b581f8.17502.run' (63606 ms old), but no daemon, ignoring it
22:58:33.515 [INFO] [org.gradle.api.Task] i: starting the daemon as: C:\Program Files\Java\openjdk1.8.0_202\jre\bin\java -cp D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.3.10\adc9e577de39fba3db6d60662892118afedd713\kotlin-compiler-embeddable-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.3.10\dd02865be0351707554b16a896b766b2396cdafa\kotlin-reflect-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-script-runtime\1.3.10\1d2bac36f99b84e1493244f12629bc0756a3ff90\kotlin-script-runtime-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar;C:\Program Files\Java\openjdk1.8.0_202\lib\tools.jar -Djava.awt.headless=true -Djava.rmi.server.hostname=127.0.0.1 -Xmx1536m -XX:MaxPermSize=512m -Dkotlin.environment.keepalive org.jetbrains.kotlin.daemon.KotlinCompileDaemon --daemon-runFilesPath C:\Users\I\AppData\Local\kotlin\daemon --daemon-autoshutdownIdleSeconds=7200 --daemon-compilerClasspath D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.3.10\adc9e577de39fba3db6d60662892118afedd713\kotlin-compiler-embeddable-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.3.10\dd02865be0351707554b16a896b766b2396cdafa\kotlin-reflect-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-script-runtime\1.3.10\1d2bac36f99b84e1493244f12629bc0756a3ff90\kotlin-script-runtime-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar;C:\Program Files\Java\openjdk1.8.0_202\lib\tools.jar
22:58:33.515 [INFO] [org.gradle.api.Task] i: Received the message signalling that the daemon is ready
22:58:33.516 [INFO] [org.gradle.api.Task] i: new daemon started, trying to find it
22:58:33.516 [INFO] [org.gradle.api.Task] i: found daemon on port 17519 (277256 ms old), trying to connect
22:58:33.516 [INFO] [org.gradle.api.Task] i: cannot connect to registry: Connection refused: connect
22:58:33.516 [INFO] [org.gradle.api.Task] i: found fresh run file 'C:\Users\I\AppData\Local\kotlin\daemon\kotlin-daemon.2019-01-06T19-23-50.118Z.ef9f56f7564e12d191d0ba8e50b581f8.17519.run' (277256 ms old), but no daemon, ignoring it
22:58:33.516 [INFO] [org.gradle.api.Task] i: found daemon on port 17502 (70469 ms old), trying to connect
22:58:33.516 [INFO] [org.gradle.api.Task] i: cannot connect to registry: Connection refused: connect
22:58:33.516 [INFO] [org.gradle.api.Task] i: found fresh run file 'C:\Users\I\AppData\Local\kotlin\daemon\kotlin-daemon.2019-01-06T19-27-16.900Z.ef9f56f7564e12d191d0ba8e50b581f8.17502.run' (70469 ms old), but no daemon, ignoring it
22:58:33.516 [INFO] [org.gradle.api.Task] i: found daemon on port 17507 (70 ms old), trying to connect
22:58:33.516 [INFO] [org.gradle.api.Task] i: connected to the daemon
22:58:33.518 [INFO] [org.gradle.api.Project] Options for KOTLIN DAEMON: IncrementalCompilationOptions(super=CompilationOptions(compilerMode=INCREMENTAL_COMPILER, targetPlatform=JVM, reportCategories=[0, 1, 2, 3, 4], reportSeverity=3, requestedCompilationResults=[0]), areFileChangesKnown=true, modifiedFiles=[D:\Devel\IdeaProjects\GradleKotlinJVM\src\main\kotlin\Main.kt], deletedFiles=[], workingDir=D:\Devel\IdeaProjects\GradleKotlinJVM\build\kotlin\compileKotlin, customCacheVersionFileName='gradle-format-version.txt', customCacheVersion=4, multiModuleICSettings=MultiModuleICSettings(buildHistoryFile=D:\Devel\IdeaProjects\GradleKotlinJVM\build\kotlin\compileKotlin\build-history.bin, useModuleDetection=false), usePreciseJavaTracking=truelocalStateDirs=[D:\Devel\IdeaProjects\GradleKotlinJVM\build\classes\kotlin\main])
22:58:33.524 [DEBUG] [sun.rmi.transport.tcp] Daemon worker: reuse connection
...
22:58:35.428 [DEBUG] [org.gradle.api.Project] [KOTLIN] [IC] compiling with args: [-Xadd-compiler-builtins, -Xbuild-file=C:\Users\I\AppData\Local\Temp\kjps6683894818132820708GradleKotlinJVM.script.xml, -classpath, D:\Devel\IdeaProjects\GradleKotlinJVM\build\classes\kotlin\main;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jdk8\1.3.10\71d0fa967493eb76648b575edf1762cb2d0c7f10\kotlin-stdlib-jdk8-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jdk7\1.3.10\4d147bf43060dc43d61b096e24da1e67dfe0c032\kotlin-stdlib-jdk7-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar, -jvm-target, 1.8, -Xload-builtins-from-dependencies, -module-name, GradleKotlinJVM, -no-reflect, -no-stdlib, -Xplugin=D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-scripting-compiler-embeddable\1.3.10\e96a6125793c4ab0258119fcdce9d182f42d32b0\kotlin-scripting-compiler-embeddable-1.3.10.jar, -Xreport-output-files, -verbose]
...
11:01:53 PM: Task execution finished 'compileKotlin --debug'.
二、使用JDK 11作为Gradle的JVM时(* 问题在此 *):
11:01:44 PM: Executing task 'compileKotlin --debug'...
...
23:01:45.888 [DEBUG] [org.gradle.api.Project] [KOTLIN] Kotlin compiler args: -Xadd-compiler-builtins -Xbuild-file=C:\Users\I\AppData\Local\Temp\kjps11452575260818015211GradleKotlinJVM.script.xml -classpath D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jdk8\1.3.10\71d0fa967493eb76648b575edf1762cb2d0c7f10\kotlin-stdlib-jdk8-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jdk7\1.3.10\4d147bf43060dc43d61b096e24da1e67dfe0c032\kotlin-stdlib-jdk7-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar -d D:\Devel\IdeaProjects\GradleKotlinJVM\build\classes\kotlin\main -jvm-target 1.8 -Xload-builtins-from-dependencies -module-name GradleKotlinJVM -no-reflect -no-stdlib -Xplugin=D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-scripting-compiler-embeddable\1.3.10\e96a6125793c4ab0258119fcdce9d182f42d32b0\kotlin-scripting-compiler-embeddable-1.3.10.jar -verbose
...
23:01:48.134 [INFO] [org.gradle.api.Task] i: starting the daemon as: C:\Program Files\Java\openjdk-11.0.1\bin\java -cp D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.3.10\adc9e577de39fba3db6d60662892118afedd713\kotlin-compiler-embeddable-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.3.10\dd02865be0351707554b16a896b766b2396cdafa\kotlin-reflect-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-script-runtime\1.3.10\1d2bac36f99b84e1493244f12629bc0756a3ff90\kotlin-script-runtime-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar -Djava.awt.headless=true -Djava.rmi.server.hostname=127.0.0.1 -Xmx1536m -XX:MaxPermSize=512m -Dkotlin.environment.keepalive org.jetbrains.kotlin.daemon.KotlinCompileDaemon --daemon-runFilesPath C:\Users\I\AppData\Local\kotlin\daemon --daemon-autoshutdownIdleSeconds=7200 --daemon-compilerClasspath D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.3.10\adc9e577de39fba3db6d60662892118afedd713\kotlin-compiler-embeddable-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.3.10\dd02865be0351707554b16a896b766b2396cdafa\kotlin-reflect-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-script-runtime\1.3.10\1d2bac36f99b84e1493244f12629bc0756a3ff90\kotlin-script-runtime-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar
23:01:48.134 [INFO] [org.gradle.api.Task] i: [daemon] OpenJDK 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
23:01:48.134 [INFO] [org.gradle.api.Task] i: Received the message signalling that the daemon is ready
23:01:48.134 [INFO] [org.gradle.api.Task] i: new daemon started, trying to find it
23:01:48.134 [INFO] [org.gradle.api.Task] i: starting the daemon as: C:\Program Files\Java\openjdk-11.0.1\bin\java -cp D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.3.10\adc9e577de39fba3db6d60662892118afedd713\kotlin-compiler-embeddable-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.3.10\dd02865be0351707554b16a896b766b2396cdafa\kotlin-reflect-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-script-runtime\1.3.10\1d2bac36f99b84e1493244f12629bc0756a3ff90\kotlin-script-runtime-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar -Djava.awt.headless=true -Djava.rmi.server.hostname=127.0.0.1 -Xmx1536m -XX:MaxPermSize=512m -Dkotlin.environment.keepalive org.jetbrains.kotlin.daemon.KotlinCompileDaemon --daemon-runFilesPath C:\Users\I\AppData\Local\kotlin\daemon --daemon-autoshutdownIdleSeconds=7200 --daemon-compilerClasspath D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.3.10\adc9e577de39fba3db6d60662892118afedd713\kotlin-compiler-embeddable-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.3.10\dd02865be0351707554b16a896b766b2396cdafa\kotlin-reflect-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.3.10\b178c1501609c6e4ee8be635513cb023a466457d\kotlin-stdlib-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-script-runtime\1.3.10\1d2bac36f99b84e1493244f12629bc0756a3ff90\kotlin-script-runtime-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-common\1.3.10\1b19d99229dcedad7caf50534dce38fe82845269\kotlin-stdlib-common-1.3.10.jar;D:\Devel\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar
23:01:48.134 [INFO] [org.gradle.api.Task] i: [daemon] OpenJDK 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
23:01:48.134 [INFO] [org.gradle.api.Task] i: Received the message signalling that the daemon is ready
23:01:48.134 [INFO] [org.gradle.api.Task] i: new daemon started, trying to find it
23:01:48.137 [WARN] [org.gradle.api.Project] Could not perform incremental compilation: Could not connect to Kotlin compile daemon
23:01:48.137 [WARN] [org.gradle.api.Project] Could not connect to kotlin daemon. Using fallback strategy.
23:01:49.486 [LIFECYCLE] [system.err]
23:01:49.486 [ERROR] [system.err] logging: using Kotlin home directory <no_path>
23:01:49.521 [ERROR] [system.err] logging: configuring the compilation environment
23:01:50.538 [ERROR] [system.err] logging: loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.net, jdk.scripting.nashorn, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt]
23:01:53.459 [ERROR] [system.err] warning: the '-d' option with a directory destination is ignored because '-Xbuild-file' is specified
...
11:01:53 PM: Task execution finished 'compileKotlin --debug'.
三、使用JDK 11作为Gradle的JVM,但在Linux上(OK):
$ ./gradlew compileKotlin --debug
...
01:33:20.145 [INFO] [org.gradle.api.Task] i: starting the daemon as: /usr/local/jdk-11.0.1/bin/java -cp /usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.3.10/adc9e577de39fba3db6d60662892118afedd713/kotlin-compiler-embeddable-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-reflect/1.3.10/dd02865be0351707554b16a896b766b2396cdafa/kotlin-reflect-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.3.10/b178c1501609c6e4ee8be635513cb023a466457d/kotlin-stdlib-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-script-runtime/1.3.10/1d2bac36f99b84e1493244f12629bc0756a3ff90/kotlin-script-runtime-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.3.10/1b19d99229dcedad7caf50534dce38fe82845269/kotlin-stdlib-common-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar -Djava.awt.headless=true -Djava.rmi.server.hostname=127.0.0.1 -Xmx1536m -XX:MaxPermSize=512m -Dkotlin.environment.keepalive org.jetbrains.kotlin.daemon.KotlinCompileDaemon --daemon-runFilesPath /usr/share/nginx/html/0xy/.kotlin/daemon --daemon-autoshutdownIdleSeconds=7200 --daemon-compilerClasspath /usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.3.10/adc9e577de39fba3db6d60662892118afedd713/kotlin-compiler-embeddable-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-reflect/1.3.10/dd02865be0351707554b16a896b766b2396cdafa/kotlin-reflect-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.3.10/b178c1501609c6e4ee8be635513cb023a466457d/kotlin-stdlib-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-script-runtime/1.3.10/1d2bac36f99b84e1493244f12629bc0756a3ff90/kotlin-script-runtime-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.3.10/1b19d99229dcedad7caf50534dce38fe82845269/kotlin-stdlib-common-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar
01:33:20.145 [INFO] [org.gradle.api.Task] i: [daemon] OpenJDK 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
01:33:20.145 [INFO] [org.gradle.api.Task] i: Received the message signalling that the daemon is ready
01:33:20.145 [INFO] [org.gradle.api.Task] i: new daemon started, trying to find it
01:33:20.145 [INFO] [org.gradle.api.Task] i: found daemon on port 17613 (56 ms old), trying to connect
01:33:20.145 [INFO] [org.gradle.api.Task] i: connected to the daemon
01:33:20.145 [INFO] [org.gradle.api.Project] Options for KOTLIN DAEMON: IncrementalCompilationOptions(super=CompilationOptions(compilerMode=INCREMENTAL_COMPILER, targetPlatform=JVM, reportCategories=[0, 1, 2, 3, 4], reportSeverity=3, requestedCompilationResults=[0]), areFileChangesKnown=false, modifiedFiles=null, deletedFiles=null, workingDir=/usr/share/nginx/html/0xy/test/build/kotlin/compileKotlin, customCacheVersionFileName='gradle-format-version.txt', customCacheVersion=4, multiModuleICSettings=MultiModuleICSettings(buildHistoryFile=/usr/share/nginx/html/0xy/test/build/kotlin/compileKotlin/build-history.bin, useModuleDetection=false), usePreciseJavaTracking=truelocalStateDirs=[/usr/share/nginx/html/0xy/test/build/classes/kotlin/main])
...
01:33:21.920 [DEBUG] [org.gradle.api.Project] [KOTLIN] [IC] compiling with args: [-Xadd-compiler-builtins, -Xbuild-file=/tmp/kjps15100965302804914597GradleKotlinJVM.script.xml, -classpath, /usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.3.10/71d0fa967493eb76648b575edf1762cb2d0c7f10/kotlin-stdlib-jdk8-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.3.10/4d147bf43060dc43d61b096e24da1e67dfe0c032/kotlin-stdlib-jdk7-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.3.10/b178c1501609c6e4ee8be635513cb023a466457d/kotlin-stdlib-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.3.10/1b19d99229dcedad7caf50534dce38fe82845269/kotlin-stdlib-common-1.3.10.jar:/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar, -jvm-target, 1.8, -Xload-builtins-from-dependencies, -module-name, GradleKotlinJVM, -no-reflect, -no-stdlib, -Xplugin=/usr/share/nginx/html/0xy/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-scripting-compiler-embeddable/1.3.10/e96a6125793c4ab0258119fcdce9d182f42d32b0/kotlin-scripting-compiler-embeddable-1.3.10.jar, -Xreport-output-files, -verbose]
...
在上面的日志中有一些可疑的事件(第二),但我不能完全理解它们的含义,以及它们是否与我的问题有关:
1.为什么启动 * Kotlin编译守护进程 * 时发生了两次(完全相等)尝试?
1.有一些错误。但他们都是在警告Kotlin的守护进程问题之后。
1.最新的错误/警告:
[ERROR] [system.err] warning: the '-d' option with a directory destination is ignored because '-Xbuild-file' is specified
是最值得怀疑的事情!因为这是唯一一条你在其他日志里找不到的信息。参见here。我在another post中问过这个问题。
4条答案
按热度按时间tjrkku2a1#
最后,我找到了问题的根源……数日之后!
我发现这个问题来自我的用户帐户。所以决定将任何依赖于用户的东西还原到它的第一个状态。在清除
Temp
文件夹(在AppData\local\
)意外我看到这些文件:是的!问题来自 unicode编码问题 (可能在
NTFS
和UTF-8
之间)!虽然这些都是log
文件,也许他们的名字并不重要,这个问题可能存在于其他地方!正如你可以猜到,损坏的文件名的一部分是
date
&time
**.所以(不幸的是)我被迫将我的个性化 *Windows用户帐户的日期和时间格式 * 从我最喜欢的(Persian (Iran)
)恢复为English (United States)
:第二个进程是 * Kotlin编译守护进程 *。
log
文件:.log.lck
文件在以前的状态下不存在!)*3zwjbxry2#
在我的情况下,我已经通过清除用户文件夹中的一些缓存进行了修复,特别是:
不知道哪一个有所不同,但在清除所有这些之后,错误就消失了。
nnt7mjpx3#
我将Kotlin从ext.Kotlin_version = '1.4.32'降级到ext.Kotlin_version = '1.3.50',并且它已修复。
8e2ybdfx4#
我知道这个问题有一个答案,但当我做同样的项目仍然抛出同样的错误在我的脸上,这是:
无法连接到Kotlin守护程序
但是后来我通过去Android Studio的终端解决了这个问题,我运行了这个代码
.\gradlew --stop
,之后我清理了项目并再次运行它,这解决了我的问题,我能够下载应用程序。我希望有人读它,它解决了他的问题。