如何解决Kotlin 1.4.0 jpa插件kotlin-maven-noarg永远不会在测试编译中完成,但与Kotlin 1.3.72兼容
我要返回一个在休息之前尚未签入的项目。应用插件“ jpa”时,我的maven构建似乎挂在了测试编译中。
[DEBUG] Plugin classpaths are: /home/gpeterso/.m2/repository/org/jetbrains/kotlin/kotlin-maven-noarg/1.4.0/kotlin-maven-noarg-1.4.0.jar
[DEBUG] Looking for plugin jpa
[DEBUG] Got plugin instancejpa of type org.jetbrains.kotlin.test.KotlinJpaMavenPluginExtension
[INFO] Applied plugin: 'jpa'
[DEBUG] Loaded Maven plugin org.jetbrains.kotlin.test.KotlinJpaMavenPluginExtension
[DEBUG] Options for plugin jpa: [preset: jpa]
[DEBUG] Plugin options are: plugin:org.jetbrains.kotlin.noarg:preset=jpa
[DEBUG] Invoking compiler org.jetbrains.kotlin.cli.jvm.K2JVMCompiler@8d2075a with arguments:
[DEBUG] Companion=org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments$Companion@2233cac0
[DEBUG] PLUGIN_OPTION_FORMAT=plugin:<pluginId>:<optionName>=<value>
[DEBUG] WARN=warn
[DEBUG] ERROR=error
[DEBUG] ENABLE=enable
[DEBUG] DEFAULT=default
[DEBUG] Companion=org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments$Companion@67fb5025
[DEBUG] Companion=org.jetbrains.kotlin.cli.common.arguments.CommonToolArguments$Companion@787e4357
[DEBUG] End of arguments
[DEBUG] Using Kotlin home directory <no_path>
[DEBUG] Configuring the compilation environment
[DEBUG] 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]
kotlin-maven-plugin:1.4.0:compile
中的同一阶段大约需要15秒,但kotlin-maven-plugin:1.4.0:test-compile
却从未完成。我的4个CPU内核一直保持交换状态,其中一个交换到100%,而其他三个则徘徊在1%-5%左右,所以我认为这是一个正在运行的单线程代码部分。
$ $M2/mvn --version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /tools/apache-maven-3.6.3
Java version: 11.0.8,vendor: Ubuntu,runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en_US,platform encoding: UTF-8
OS name: "linux",version: "4.15.0-112-generic",arch: "amd64",family: "unix"
这是pom.xml
中的插件配置。 ${kotlin.version}
是1.4.0。
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
<configuration>
<jvmTarget>11</jvmTarget>
<args>
<arg>-Xjvm-default=enable</arg>
</args>
<compilerPlugins>
<plugin>jpa</plugin>
</compilerPlugins>
</configuration>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-noarg</artifactId>
<version>${kotlin.version}</version>
</dependency>
</dependencies>
</plugin>
当我将此处显示的两个<version>
元素设置为1.3.72
时,即使我将其他Kotlin依赖项保留为1.4.0,也可以正常运行。但是,当此处显示的两个<version>
元素为1.4.0时,它会如描述的那样挂起。主编译通常以任何一种方式完成。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。