From 6496c76a4d13458b45af1421c5a8c4b791121ee5 Mon Sep 17 00:00:00 2001
From: Him188 <Him188@mamoe.net>
Date: Sun, 1 Mar 2020 13:00:34 +0800
Subject: [PATCH] Use build.gradle.kts

---
 build.gradle     | 47 --------------------------------------------
 build.gradle.kts | 51 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+), 47 deletions(-)
 delete mode 100644 build.gradle
 create mode 100644 build.gradle.kts

diff --git a/build.gradle b/build.gradle
deleted file mode 100644
index ee2023fb2..000000000
--- a/build.gradle
+++ /dev/null
@@ -1,47 +0,0 @@
-buildscript {
-    repositories {
-        mavenLocal()
-        maven { url 'https://mirrors.huaweicloud.com/repository/maven' }
-        jcenter()
-        mavenCentral()
-        google()
-        maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
-        maven { url 'https://dl.bintray.com/kotlin/kotlin-dev' }
-    }
-
-    dependencies {
-        classpath 'com.android.tools.build:gradle:3.5.3'
-        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
-        classpath 'com.github.jengelman.gradle.plugins:shadow:5.2.0'
-        classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlinVersion"
-        classpath "org.jetbrains.kotlinx:atomicfu-gradle-plugin:$atomicFuVersion"
-    }
-}
-
-try {
-    def keyProps = new Properties()
-    def keyFile = file("local.properties")
-    if (keyFile.exists()) keyFile.withInputStream { keyProps.load(it) }
-    if (!keyProps.getProperty("sdk.dir", "").isEmpty()) {
-        project.ext.set("isAndroidSDKAvailable", true)
-    } else {
-        project.ext.set("isAndroidSDKAvailable", false)
-    }
-} catch (Exception ignored) {
-}
-
-allprojects {
-    group = "net.mamoe"
-    version = getProperty("mirai_version")
-
-
-    repositories {
-        mavenLocal()
-        maven { url "https://mirrors.huaweicloud.com/repository/maven" }
-        jcenter()
-        mavenCentral()
-        google()
-        maven { url "https://dl.bintray.com/kotlin/kotlin-eap" }
-        maven { url "https://dl.bintray.com/kotlin/kotlin-dev" }
-    }
-}
\ No newline at end of file
diff --git a/build.gradle.kts b/build.gradle.kts
new file mode 100644
index 000000000..4e00f2693
--- /dev/null
+++ b/build.gradle.kts
@@ -0,0 +1,51 @@
+import java.lang.System.getProperty
+import java.util.*
+
+buildscript {
+    repositories {
+        mavenLocal()
+        maven { setUrl("https://mirrors.huaweicloud.com/repository/maven") }
+        jcenter()
+        mavenCentral()
+        google()
+        maven { setUrl("https://dl.bintray.com/kotlin/kotlin-eap") }
+        maven { setUrl("https://dl.bintray.com/kotlin/kotlin-dev") }
+    }
+
+    dependencies {
+        val kotlinVersion: String by project
+        val atomicFuVersion: String by project
+
+        classpath("com.android.tools.build:gradle:3.5.3")
+        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")
+        classpath("com.github.jengelman.gradle.plugins:shadow:5.2.0")
+        classpath("org.jetbrains.kotlin:kotlin-serialization:$kotlinVersion")
+        classpath("org.jetbrains.kotlinx:atomicfu-gradle-plugin:$atomicFuVersion")
+    }
+}
+
+runCatching {
+    val keyProps = Properties().apply {
+        file("local.properties").takeIf { it.exists() }?.inputStream()?.use { load(it) }
+    }
+    if (keyProps.getProperty("sdk.dir", "").isNotEmpty()) {
+        project.ext.set("isAndroidSDKAvailable", true)
+    } else {
+        project.ext.set("isAndroidSDKAvailable", false)
+    }
+}
+
+allprojects {
+    group = "net.mamoe"
+    version = getProperty("mirai_version")
+
+    repositories {
+        mavenLocal()
+        maven { setUrl("https://mirrors.huaweicloud.com/repository/maven") }
+        jcenter()
+        mavenCentral()
+        google()
+        maven { setUrl("https://dl.bintray.com/kotlin/kotlin-eap") }
+        maven { setUrl("https://dl.bintray.com/kotlin/kotlin-dev") }
+    }
+}
\ No newline at end of file