Sie können eine Standardimplementierung für Kotlins I / F definieren, müssen diese jedoch im Voraus festlegen, um diese Standardimplementierung von der Java-Seite aus zu verwenden. Dieses Mal werde ich die Einstellmethode aufschreiben.
Fügen Sie dem Argument des Teils, der das Kompilieren von Kotlin in pom.xml definiert, -Xjvm-default = kompatibilität
hinzu
Beispiel:
pom.xml
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<executions>
<execution>
<id>compile</id>
<goals> <goal>compile</goal> </goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/main/kotlin</sourceDir>
<sourceDir>${project.basedir}/src/main/java</sourceDir>
</sourceDirs>
<args>
<arg>-Xjvm-default=compatibility</arg>
</args>
</configuration>
</execution>
<execution>
<id>test-compile</id>
<goals> <goal>test-compile</goal> </goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/test/kotlin</sourceDir>
<sourceDir>${project.basedir}/src/test/java</sourceDir>
</sourceDirs>
<args>
<arg>-Xjvm-default=compatibility</arg>
</args>
</configuration>
</execution>
</executions>
</plugin>
Beschreiben von jvmTarget in Eigenschaften Beispiel:
pom.xml
<properties>
<jdk.version>1.8</jdk.version>
<encoding>UTF-8</encoding>
<kotlin.version>1.3.60</kotlin.version>
<kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
</properties>
@ JvmDefault
hinzu.Das ist alles.
Recommended Posts