我试图在Maven中使用Kotlin,所以我跟踪了文档
我在pom.xml文件中有这个配置
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<kotlin.version>1.2.10</kotlin.version>
</properties>
<build>
<sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
<testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
<plugins>
<plugin>
<artifactId>kotlin-maven-plugin</artifactId>
<groupId>org.jetbrains.kotlin</groupId>
<version>${kotlin.version}</version>
<executions>
<execution>
<id>compile</id>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>test-compile</id>
<goals>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib-jdk8</artifactId>
<version>${kotlin.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<version>${kotlin.version}</version>
</dependency>
</dependencies>源文件夹是src/main/kotlin和src/test/kotlin
当我做mvn clean install时,我得到了这个错误
[ERROR] Failed to execute goal org.jetbrains.kotlin:kotlin-maven-plugin:1.2.10:compile (compile) on project kotlin-starter: Execution compile of goal org.jetbrains.kotlin:kotlin-maven-plugin:1.2.10:compile failed: A required class was missing while executing org.jetbrains.kotlin:kotlin-maven-plugin:1.2.10:compile: kotlin/reflect/KDeclarationContainer
[ERROR] -----------------------------------------------------
[ERROR] realm = plugin>org.jetbrains.kotlin:kotlin-maven-plugin:1.2.10
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
...我也尝试使用kotlin-stdlib而不是kotlin-stdlib-jdk8,但是我得到了同样的错误。当我打开库时,我看到包KDeclarationContainer中的类kotlin.reflect,所以我不明白为什么会出现这个错误?
编辑:当我将kotlin版本改为<kotlin.version>1.1.61</kotlin.version>时,一切都很完美.
发布于 2018-01-26 15:45:17
我和kotlin plugin/1.2.20有一个非常相似的问题,在我从本地maven repo删除org/jetbrains并重新运行构建后,这个问题就消失了。我只能认为有些东西被腐蚀或丢失了。
https://stackoverflow.com/questions/47889454
复制相似问题