diff --git a/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/configuration/KotlinMavenConfigurator.kt b/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/configuration/KotlinMavenConfigurator.kt
index e70b739d527..a7d3799bc10 100644
--- a/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/configuration/KotlinMavenConfigurator.kt
+++ b/idea/idea-maven/src/org/jetbrains/kotlin/idea/maven/configuration/KotlinMavenConfigurator.kt
@@ -133,7 +133,11 @@ abstract class KotlinMavenConfigurator
pom.addLibraryRepository(SNAPSHOT_REPOSITORY)
pom.addPluginRepository(SNAPSHOT_REPOSITORY)
}
- if (isEap(version)) {
+ else if (is11Prerelease(version)) {
+ pom.addLibraryRepository(EAP_11_REPOSITORY)
+ pom.addPluginRepository(EAP_11_REPOSITORY)
+ }
+ else if (isEap(version)) {
pom.addLibraryRepository(EAP_REPOSITORY)
pom.addPluginRepository(EAP_REPOSITORY)
}
diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinInProjectUtils.kt b/idea/src/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinInProjectUtils.kt
index a7a36ce69ef..f0eb0af5d33 100644
--- a/idea/src/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinInProjectUtils.kt
+++ b/idea/src/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinInProjectUtils.kt
@@ -47,6 +47,13 @@ val EAP_REPOSITORY = RepositoryDescription(
"http://dl.bintray.com/kotlin/kotlin-eap",
isSnapshot = false)
+@JvmField
+val EAP_11_REPOSITORY = RepositoryDescription(
+ "bintray.kotlin.eap",
+ "Bintray Kotlin 1.1 EAP Repository",
+ "http://dl.bintray.com/kotlin/kotlin-eap-1.1",
+ isSnapshot = false)
+
fun isModuleConfigured(module: Module): Boolean {
return Extensions.getExtensions(KotlinProjectConfigurator.EP_NAME).any {
it.getStatus(module) == ConfigureKotlinStatus.CONFIGURED
@@ -151,3 +158,6 @@ fun isEap(version: String): Boolean {
return version.contains("rc") || version.contains("eap")
}
+fun is11Prerelease(version: String): Boolean {
+ return Regex("1\\.1-[A-Za-z][A-Za-z0-9-]*").matches(version) && !version.startsWith("1.1-dev")
+}
diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinJavaFrameworkSupportProvider.kt b/idea/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinJavaFrameworkSupportProvider.kt
index 85a732d7752..45c2d17a6eb 100644
--- a/idea/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinJavaFrameworkSupportProvider.kt
+++ b/idea/src/org/jetbrains/kotlin/idea/configuration/GradleKotlinJavaFrameworkSupportProvider.kt
@@ -47,6 +47,9 @@ class GradleKotlinJavaFrameworkSupportProvider : GradleFrameworkSupportProvider(
kotlinVersion = "1.1-SNAPSHOT"
KotlinWithGradleConfigurator.SNAPSHOT_REPOSITORY_SNIPPET
}
+ is11Prerelease(kotlinVersion) -> {
+ KotlinWithGradleConfigurator.EAP_11_REPOSITORY_SNIPPET
+ }
isEap(kotlinVersion) -> {
KotlinWithGradleConfigurator.EAP_REPOSITORY_SNIPPET
}
diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinWithGradleConfigurator.kt b/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinWithGradleConfigurator.kt
index 0e6afdd2d73..16ea9f66e8b 100644
--- a/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinWithGradleConfigurator.kt
+++ b/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinWithGradleConfigurator.kt
@@ -137,15 +137,7 @@ abstract class KotlinWithGradleConfigurator : KotlinProjectConfigurator {
}
val repositoriesBlock = getRepositoriesBlock(file)
- if (isSnapshot(version)) {
- wasModified = wasModified or addLastExpressionInBlockIfNeeded(SNAPSHOT_REPOSITORY_SNIPPET, repositoriesBlock)
- }
- else if (isEap(version)) {
- wasModified = wasModified or addLastExpressionInBlockIfNeeded(EAP_REPOSITORY_SNIPPET, repositoriesBlock)
- }
- else if (!isRepositoryConfigured(repositoriesBlock)) {
- wasModified = wasModified or addLastExpressionInBlockIfNeeded(MAVEN_CENTRAL, repositoriesBlock)
- }
+ wasModified = wasModified or addRepository(repositoriesBlock, version)
val dependenciesBlock = getDependenciesBlock(file)
wasModified = wasModified or addExpressionInBlockIfNeeded(LIBRARY, dependenciesBlock, false)
@@ -195,6 +187,7 @@ abstract class KotlinWithGradleConfigurator : KotlinProjectConfigurator {
val SNAPSHOT_REPOSITORY_SNIPPET = "maven {\nurl '" + SNAPSHOT_REPOSITORY.url + "'\n}"
val EAP_REPOSITORY_SNIPPET = "maven {\nurl '" + EAP_REPOSITORY.url + "'\n}"
+ val EAP_11_REPOSITORY_SNIPPET = "maven {\nurl '" + EAP_11_REPOSITORY.url + "'\n}"
private val MAVEN_CENTRAL = "mavenCentral()\n"
private val JCENTER = "jcenter()\n"
@@ -279,15 +272,7 @@ abstract class KotlinWithGradleConfigurator : KotlinProjectConfigurator {
wasModified = addFirstExpressionInBlockIfNeeded(VERSION.replace(VERSION_TEMPLATE, version), buildScriptBlock)
val buildScriptRepositoriesBlock = getBuildScriptRepositoriesBlock(file)
- if (isSnapshot(version)) {
- wasModified = wasModified or addLastExpressionInBlockIfNeeded(SNAPSHOT_REPOSITORY_SNIPPET, buildScriptRepositoriesBlock)
- }
- else if (isEap(version)) {
- wasModified = wasModified or addLastExpressionInBlockIfNeeded(EAP_REPOSITORY_SNIPPET, buildScriptRepositoriesBlock)
- }
- else if (!isRepositoryConfigured(buildScriptRepositoriesBlock)) {
- wasModified = wasModified or addLastExpressionInBlockIfNeeded(MAVEN_CENTRAL, buildScriptRepositoriesBlock)
- }
+ wasModified = wasModified or addRepository(buildScriptRepositoriesBlock, version)
val buildScriptDependenciesBlock = getBuildScriptDependenciesBlock(file)
wasModified = wasModified or addLastExpressionInBlockIfNeeded(CLASSPATH, buildScriptDependenciesBlock)
@@ -410,5 +395,16 @@ abstract class KotlinWithGradleConfigurator : KotlinProjectConfigurator {
"
See manual installation instructions here.