不确定如何解决此问题。
我想要Kotlin运行时的this version和maven plugin。
这些是我的pom.xml中的位:
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-runtime</artifactId>
<version>1.2-M2</version>
</dependency>
<build>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>1.2-M2</version>
<executions>
我将此作为回购添加:
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>kotlin-bintray</id>
<name>Kotlin Bintray</name>
<url>http://dl.bintray.com/kotlin/kotlin-dev/</url>
</repository>
我收到此错误:
未能找到 org.jetbrains.kotlin:kotlin-maven-plugin:jar:1.2-M2 in https://repo.maven.apache.org/maven2被缓存在当地 存储库,在更新之前不会重新尝试解析 中心间隔已经过去或更新了 强制
但我没有看到任何可能出错的事。
顺便提一下,请注意找到了运行时jar,因此存储库部分必须正确,因为这个存储库是maven找到它的地方。由于某些原因,maven插件jar是另一回事......
答案 0 :(得分:2)
要确保从maven中心下载新内容,您需要清除本地副本,因此请删除目录
〜/ .m2目录/回购/组织/ JetBrains的/科特林/科特林-行家-插件
您还需要将第三方回购添加到〜/ .m2 see here
的settings.xml中<settings>
...
<profiles>
...
<profile>
<id>myprofile</id>
<repositories>
<repository>
<id>my-repo2</id>
<name>your custom repo</name>
<url>https://dl.bintray.com/kotlin/kotlin-dev/</url>
</repository>
</repositories>
</profile>
...
</profiles>
<activeProfiles>
<activeProfile>myprofile</activeProfile>
</activeProfiles>
...
</settings>
答案 1 :(得分:2)
我刚刚修好了。这真是太傻了。我发现对于插件,需要定义一个插件存储库部分。
<pluginRepositories>
<pluginRepository>
<id>kotlin-bintray</id>
<name>Kotlin Bintray</name>
<url>http://dl.bintray.com/kotlin/kotlin-dev</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
现在它有效。我想我应该花更多时间深入学习maven:)
答案 2 :(得分:0)
在documentation,我们可以看到如何实现编译器插件
对于kotlin-allopen
,在<configuration>
标记内添加跟随符<pluginOptions>
和<plugin>
<plugin>
<artifactId>kotlin-maven-plugin</artifactId>
<groupId>org.jetbrains.kotlin</groupId>
<version>${kotlin.version}</version>
<configuration>
<compilerPlugins>
<!-- Or "spring" for the Spring support -->
<plugin>all-open</plugin>
</compilerPlugins>
<pluginOptions>
<!-- Each annotation is placed on its own line -->
<option>all-open:annotation=com.my.Annotation</option>
<option>all-open:annotation=com.their.AnotherAnnotation</option>
</pluginOptions>
</configuration>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-allopen</artifactId>
<version>${kotlin.version}</version>
</dependency>
</dependencies>
</plugin>