我正试图以这种方式用maven-plugin将Pact-File发布到我的Pact-Broker(取自github Pact-Project):
<build>
<plugins>
<plugin>
<groupId>au.com.dius</groupId>
<artifactId>pact-jvm-provider-maven_2.12</artifactId>
<version>3.5.11</version>
<configuration>
<pactDirectory>${project.build.directory}/pacts</pactDirectory>
<pactBrokerUrl>mybrokerurl.de</pactBrokerUrl>
<projectVersion>${project.version}</projectVersion>
<trimSnapshot>true</trimSnapshot> <!-- Defaults to false -->
</configuration>
</plugin>
</plugins>
</build>
如果我尝试使用pact:publish执行maven构建,我会收到以下错误:
Failed to execute goal au.com.dius:pact-jvm-provider-maven_2.12:3.5.11:publish (default-cli) on project myproject-test: Execution default-cli of goal au.com.dius:pact-jvm-provider-maven_2.12:3.5.11:publish failed: A required class was missing while executing au.com.dius:pact-jvm-provider-maven_2.12:3.5.11:publish: kotlin.TypeCastException
Stack-Trace的顶部:
Error injecting: au.com.dius.pact.provider.maven.PactPublishMojo
java.lang.NoClassDefFoundError: kotlin.TypeCastException
at java.lang.J9VMInternals.prepareClassImpl(Native Method)
使用JUnit-Tests创建Pact-File工作正常,所以我假设我在类路径中有正确的依赖项和所需文件。
我错过了什么?看来,kotlin.TypeCastExeption-Class在包
中<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-runtime</artifactId>
所以我在收到此错误后尝试将依赖项(版本1.2.0)添加到我的pom中 - 但这没有用。
有没有人知道我的问题的解决方案?
答案 0 :(得分:0)
我也遇到了同样的错误。我应用的解决方法是从本地磁盘删除maven存储库并重建项目。它解决了我的错误。