我如何创建一个使用Gradle构建的Kotlin项目?
我正在尝试使用IntelliJ IDEA(Ubuntu 16.04上的2016.2.5)创建一个使用Gradle构建的新Kotlin项目。 当我这样做,我马上得到一个错误消息。
这就是我想要的:
-
从欢迎屏幕中选择“创建新项目”。
-
从左侧窗格中选择“Gradle”,从右侧选择“Kotlin(Java)”。 点击下一步”。
-
输入“hello-world”作为ArtifactId。 点击下一步。
-
确保选择“从源集创建单独的模块”和“使用默认的Gradle包装器”,没有别的。 点击下一步”。
-
使用项目名称和位置的默认值。 点击“完成”。
然后我马上得到这个错误:
Gradle 'hello-world' project refresh failed Error: Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.1-M02-12. Searched in the following locations: https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.1-M02-12/kotlin-gradle-plugin-1.1-M02-12.pom https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.1-M02-12/kotlin-gradle-plugin-1.1-M02-12.jar Required by: :hello-world:unspecified
生成的build.gradle
看起来像这样:
version '1.0-SNAPSHOT' buildscript { ext.kotlin_version = '1.1-M02-12' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } apply plugin: 'kotlin' repositories { mavenCentral() } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" }
我如何创建一个与Gradle建立正确的Kotlin项目?
在您的build.gradle
,将ext.kotlin_version
更改为:
ext.kotlin_version = '1.1-M02'
IDE插件将自己的版本放入构建脚本,而不是Kotlin版本是一个小错误。
并且将1.1 EAP存储库添加到buildscript
和根作用域中的repositories
:
repositories { // ... maven { url "http://dl.bintray.com/kotlin/kotlin-eap-1.1" } }
与EAP版本相关的Kotlin工件不会像公共版本那样放入Maven Central,而且这个资源库不会自动添加到生成的构建脚本中。
然后刷新Gradle项目,构建应该通过。
随意检查这个build.gradle
文件 。
- Gradle花时间看似无所事事
- 尝试同步gradle时无法加载类“kotlin.collections.CollectionsKT”错误
- 使用Gradle从Kotlin链接到JVM的asm定义的类
- 将Kotlin添加到现有Java项目会打破Android Studio gradle消息错误
- Android:仪器运行失败,由于“java.lang.ClassNotFoundException”:未找到测试
- Kotlin崩溃无法将提供的符号转换为Dependency类型的对象:org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension_Decorated
- 如何使用Gradle建立Google协议缓冲区和Kotlin?
- 无法使Coverity Scan工作(Windows和Travis上的Java / Kotlin / Gradle 3.3)
- 如何使用productflavors和jni来设置Android库模块