Upgrade to AGP 7, ready to use Java 11 (#261)

* Update gradlew

./gradlew wrapper --gradle-version 6.8.3

* Fix line separator

* Fix build

Co-authored-by: tehcneko <7764726+tehcneko@users.noreply.github.com>
This commit is contained in:
vvb2060 2021-03-04 00:35:50 +08:00 committed by GitHub
parent 534b9f4fe6
commit 8e86ace802
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 162 additions and 144 deletions

12
.gitattributes vendored
View File

@ -1,13 +1,9 @@
# Set the default behavior, in case people don't have core.autocrlf set. # Set the default behavior, in case people don't have core.autocrlf set.
* text=auto * text=auto eol=lf
# Declare files that will always have LF line endings on checkout. # Declare files that will always have CRLF line endings on checkout.
META-INF/** text eol=lf *.cmd text eol=crlf
*.prop text eol=lf *.bat text eol=crlf
*.sh text eol=lf
*.md text eol=lf
update-binary text eol=lf
update-script text eol=lf
# Denote all files that are truly binary and should not be modified. # Denote all files that are truly binary and should not be modified.
*.so binary *.so binary

View File

@ -21,10 +21,10 @@ jobs:
with: with:
submodules: 'recursive' submodules: 'recursive'
fetch-depth: 0 fetch-depth: 0
- name: set up JDK 1.8 - name: set up JDK 11
uses: actions/setup-java@v1 uses: actions/setup-java@v1
with: with:
java-version: 1.8 java-version: 11
- name: Build with Gradle - name: Build with Gradle
run: bash ./gradlew zipRelease zipDebug run: bash ./gradlew zipRelease zipDebug
- name: Prepare artifact - name: Prepare artifact

View File

@ -21,10 +21,10 @@ jobs:
with: with:
submodules: 'recursive' submodules: 'recursive'
fetch-depth: 0 fetch-depth: 0
- name: set up JDK 1.8 - name: set up JDK 11
uses: actions/setup-java@v1 uses: actions/setup-java@v1
with: with:
java-version: 1.8 java-version: 11
- name: Build with Gradle - name: Build with Gradle
id: buildRelease id: buildRelease
run: | run: |

6
.gitignore vendored
View File

@ -1,11 +1,7 @@
*.iml *.iml
.gradle .gradle
/local.properties /local.properties
.idea /.idea
/.idea/caches/build_file_checksums.ser
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
.DS_Store .DS_Store
/build /build
/captures /captures

View File

@ -17,22 +17,24 @@
* Copyright (C) 2021 LSPosed Contributors * Copyright (C) 2021 LSPosed Contributors
*/ */
import com.android.build.gradle.internal.api.BaseVariantOutputImpl import com.android.build.gradle.internal.api.BaseVariantOutputImpl
import java.nio.file.Paths; import java.nio.file.Paths
plugins { plugins {
id("com.android.application") id("com.android.application")
kotlin("android") kotlin("android")
} }
android { val androidTargetSdkVersion: Int by rootProject.extra
val androidTargetSdkVersion: Int by extra val androidMinSdkVersion: Int by rootProject.extra
val androidMinSdkVersion: Int by extra val androidBuildToolsVersion: String by rootProject.extra
val androidBuildToolsVersion: String by extra val androidCompileSdkVersion: Int by rootProject.extra
val androidCompileSdkVersion: Int by extra val androidCompileNdkVersion: String by rootProject.extra
val androidCompileNdkVersion: String by extra val androidSourceCompatibility: JavaVersion by rootProject.extra
val androidSourceCompatibility: JavaVersion by extra val androidTargetCompatibility: JavaVersion by rootProject.extra
val androidTargetCompatibility: JavaVersion by extra val verCode: Int by rootProject.extra
val verName: String by rootProject.extra
android {
compileSdkVersion(androidCompileSdkVersion) compileSdkVersion(androidCompileSdkVersion)
ndkVersion = androidCompileNdkVersion ndkVersion = androidCompileNdkVersion
buildToolsVersion(androidBuildToolsVersion) buildToolsVersion(androidBuildToolsVersion)
@ -45,10 +47,10 @@ android {
applicationId("io.github.lsposed.manager") applicationId("io.github.lsposed.manager")
minSdkVersion(androidMinSdkVersion) minSdkVersion(androidMinSdkVersion)
targetSdkVersion(androidTargetSdkVersion) targetSdkVersion(androidTargetSdkVersion)
versionCode(extra["versionCode"] as Int) versionCode(verCode)
versionName(extra["versionName"] as String) versionName(verName)
resConfigs("en", "zh-rCN", "zh-rTW", "zh-rHK", "ru", "uk", "nl", "ko", "fr") resConfigs("en", "zh-rCN", "zh-rTW", "zh-rHK", "ru", "uk", "nl", "ko", "fr")
resValue("string", "versionName", extra["versionName"] as String) resValue("string", "versionName", verName)
} }
compileOptions { compileOptions {
@ -56,19 +58,21 @@ android {
sourceCompatibility(androidSourceCompatibility) sourceCompatibility(androidSourceCompatibility)
} }
lintOptions { lint {
disable("MissingTranslation") disable += "MissingTranslation"
disable("ExtraTranslation") disable += "ExtraTranslation"
isAbortOnError = true isAbortOnError = true
isCheckReleaseBuilds = true isCheckReleaseBuilds = true
} }
packagingOptions { packagingOptions {
exclude("META-INF/**") resources {
exclude("kotlin/**") excludes += "META-INF/**"
exclude("org/**") excludes += "kotlin/**"
exclude("**.properties") excludes += "org/**"
exclude("**.bin") excludes += "**.properties"
excludes += "**.bin"
}
} }
dependenciesInfo.includeInApk = false dependenciesInfo.includeInApk = false
@ -91,12 +95,12 @@ android {
} }
} }
val optimizeReleaseResources = task("optimizeReleaseResources").doLast { val optimizeReleaseResources = task("optimizeReleaseRes").doLast {
val aapt2 = Paths.get(project.android.sdkDirectory.path, "build-tools", project.android.buildToolsVersion, "aapt2") val aapt2 = Paths.get(project.android.sdkDirectory.path, "build-tools", project.android.buildToolsVersion, "aapt2")
val zip = Paths.get(project.buildDir.path, "intermediates", "processed_res", "release", "out", "resources-release.ap_") val zip = Paths.get(project.buildDir.path, "intermediates", "processed_res", "release", "out", "resources-release.ap_")
val optimized = File("${zip}.opt") val optimized = File("${zip}.opt")
val cmd = exec { val cmd = exec {
commandLine(aapt2, "optimize", "--collapse-resource-names", "--shorten-resource-paths", "-o", optimized, zip) commandLine(aapt2, "optimize", "--collapse-resource-names", "-o", optimized, zip)
isIgnoreExitValue = false isIgnoreExitValue = false
} }
if (cmd.exitValue == 0) { if (cmd.exitValue == 0) {
@ -106,7 +110,7 @@ val optimizeReleaseResources = task("optimizeReleaseResources").doLast {
} }
tasks.whenTaskAdded { tasks.whenTaskAdded {
if (name == "processReleaseResources") { if (name == "shrinkReleaseRes") {
finalizedBy(optimizeReleaseResources) finalizedBy(optimizeReleaseResources)
} }
} }
@ -153,9 +157,10 @@ dependencies {
implementation(project(":manager-service")) implementation(project(":manager-service"))
} }
configurations { configurations.all {
compile.get().exclude(group = "org.jetbrains", module = "annotations") resolutionStrategy {
compile.get().exclude(group = "androidx.appcompat", module = "appcompat") exclude(group = "org.jetbrains", module = "annotations")
// cleanedAnnotations() exclude(group = "androidx.appcompat", module = "appcompat")
}
} }

View File

@ -16,16 +16,16 @@
* *
* Copyright (C) 2021 LSPosed Contributors * Copyright (C) 2021 LSPosed Contributors
*/ */
import org.eclipse.jgit.internal.storage.file.FileRepository
import org.eclipse.jgit.api.Git import org.eclipse.jgit.api.Git
import org.eclipse.jgit.internal.storage.file.FileRepository
buildscript { buildscript {
repositories { repositories {
google() google()
jcenter() mavenCentral()
} }
dependencies { dependencies {
classpath("com.android.tools.build:gradle:4.1.2") classpath("com.android.tools.build:gradle:7.0.0-alpha08")
classpath("org.eclipse.jgit:org.eclipse.jgit:5.10.0.202012080955-r") classpath("org.eclipse.jgit:org.eclipse.jgit:5.10.0.202012080955-r")
classpath(kotlin("gradle-plugin", version = "1.4.31")) classpath(kotlin("gradle-plugin", version = "1.4.31"))
} }
@ -35,19 +35,19 @@ val repo = FileRepository(rootProject.file(".git"))
val refId = repo.refDatabase.exactRef("refs/remotes/origin/master").objectId!! val refId = repo.refDatabase.exactRef("refs/remotes/origin/master").objectId!!
val commitCount = Git(repo).log().add(refId).call().count() val commitCount = Git(repo).log().add(refId).call().count()
allprojects { val verCode by extra(commitCount + 4200)
extra["versionCode"] = commitCount + 4200 val verName by extra("v1.2.0")
extra["versionName"] = "v1.2.0" val androidTargetSdkVersion by extra(30)
extra["androidTargetSdkVersion"] = 30 val androidMinSdkVersion by extra(27)
extra["androidMinSdkVersion"] = 27 val androidBuildToolsVersion by extra("30.0.3")
extra["androidBuildToolsVersion"] = "30.0.3" val androidCompileSdkVersion by extra(30)
extra["androidCompileSdkVersion"] = 30 val androidCompileNdkVersion by extra("22.0.7026061")
extra["androidCompileNdkVersion"] = "22.0.7026061" val androidSourceCompatibility by extra(JavaVersion.VERSION_1_8)
extra["androidSourceCompatibility"] = JavaVersion.VERSION_1_8 val androidTargetCompatibility by extra(JavaVersion.VERSION_1_8)
extra["androidTargetCompatibility"] = JavaVersion.VERSION_1_8 val apiCode by extra(93)
extra["apiCode"] = 93 val zipPathMagiskReleasePath by extra(project(":core").projectDir.path + "/build/tmp/release/magisk/")
extra["zipPathMagiskReleasePath"] = project(":core").projectDir.path + "/build/tmp/release/magisk/"
allprojects {
repositories { repositories {
google() google()
jcenter() jcenter()

View File

@ -47,20 +47,20 @@ val moduleMinRiruApiVersion = 10
val moduleMinRiruVersionName = "v23.0" val moduleMinRiruVersionName = "v23.0"
val moduleMaxRiruApiVersion = 10 val moduleMaxRiruApiVersion = 10
val apiCode: Int by extra val apiCode: Int by rootProject.extra
val androidTargetSdkVersion: Int by extra val androidTargetSdkVersion: Int by rootProject.extra
val androidMinSdkVersion: Int by extra val androidMinSdkVersion: Int by rootProject.extra
val androidBuildToolsVersion: String by extra val androidBuildToolsVersion: String by rootProject.extra
val androidCompileSdkVersion: Int by extra val androidCompileSdkVersion: Int by rootProject.extra
val androidCompileNdkVersion: String by extra val androidCompileNdkVersion: String by rootProject.extra
val androidSourceCompatibility: JavaVersion by extra val androidSourceCompatibility: JavaVersion by rootProject.extra
val androidTargetCompatibility: JavaVersion by extra val androidTargetCompatibility: JavaVersion by rootProject.extra
val zipPathMagiskReleasePath: String by extra val zipPathMagiskReleasePath: String by rootProject.extra
val versionCode: Int by extra val verCode: Int by rootProject.extra
val versionName: String by extra val verName: String by rootProject.extra
dependencies { dependencies {
implementation("rikka.ndk:riru:10") implementation("rikka.ndk:riru:10")
@ -75,33 +75,36 @@ dependencies {
android { android {
compileSdkVersion(androidCompileSdkVersion) compileSdkVersion(androidCompileSdkVersion)
ndkVersion = androidCompileNdkVersion
buildToolsVersion(androidBuildToolsVersion)
buildFeatures {
prefab = true
}
defaultConfig { defaultConfig {
applicationId("io.github.lsposed.lspd") applicationId("io.github.lsposed.lspd")
minSdkVersion(androidMinSdkVersion) minSdkVersion(androidMinSdkVersion)
targetSdkVersion(androidTargetSdkVersion) targetSdkVersion(androidTargetSdkVersion)
multiDexEnabled = false multiDexEnabled = false
buildFeatures {
prefab = true
}
externalNativeBuild { externalNativeBuild {
cmake { cmake {
abiFilters("arm64-v8a", "armeabi-v7a", "x86", "x86_64") abiFilters("arm64-v8a", "armeabi-v7a", "x86", "x86_64")
cppFlags("-std=c++17 -ffixed-x18 -Qunused-arguments -frtti -fomit-frame-pointer -fpie -fPIC") cppFlags("-std=c++17 -ffixed-x18 -Qunused-arguments -frtti -fomit-frame-pointer -fpie -fPIC")
cFlags("-std=gnu99 -ffixed-x18 -Qunused-arguments -frtti -fomit-frame-pointer -fpie -fPIC") cFlags("-std=gnu99 -ffixed-x18 -Qunused-arguments -frtti -fomit-frame-pointer -fpie -fPIC")
arguments("-DRIRU_MODULE_API_VERSION=$moduleMaxRiruApiVersion", arguments("-DRIRU_MODULE_API_VERSION=$moduleMaxRiruApiVersion",
"-DRIRU_MODULE_VERSION=${extra["versionCode"]}", "-DRIRU_MODULE_VERSION=$verCode",
"-DRIRU_MODULE_VERSION_NAME:STRING=\"${extra["versionName"]}\"") "-DRIRU_MODULE_VERSION_NAME:STRING=\"$verName\"")
} }
} }
buildConfigField("int", "API_CODE", "$apiCode") buildConfigField("int", "API_CODE", "$apiCode")
buildConfigField("String", "VERSION_NAME", "\"${extra["versionName"]}\"") buildConfigField("String", "VERSION_NAME", "\"$verName\"")
buildConfigField("Integer", "VERSION_CODE", extra["versionCode"].toString()) buildConfigField("Integer", "VERSION_CODE", verCode.toString())
} }
lintOptions { lint {
isAbortOnError = false isAbortOnError = false
isCheckReleaseBuilds = false isCheckReleaseBuilds = false
} }
@ -132,8 +135,6 @@ android {
path("src/main/cpp/CMakeLists.txt") path("src/main/cpp/CMakeLists.txt")
} }
} }
ndkVersion = androidCompileNdkVersion
buildToolsVersion(androidBuildToolsVersion)
compileOptions { compileOptions {
targetCompatibility(androidTargetCompatibility) targetCompatibility(androidTargetCompatibility)
@ -146,7 +147,7 @@ afterEvaluate {
android.applicationVariants.forEach { variant -> android.applicationVariants.forEach { variant ->
val variantCapped = variant.name.capitalize() val variantCapped = variant.name.capitalize()
val variantLowered = variant.name.toLowerCase() val variantLowered = variant.name.toLowerCase()
val zipFileName = "$moduleName-$versionName-$versionCode-$variantLowered.zip" val zipFileName = "$moduleName-$verName-$verCode-$variantLowered.zip"
delete(file(zipPathMagiskReleasePath)) delete(file(zipPathMagiskReleasePath))
@ -158,8 +159,8 @@ afterEvaluate {
into("$projectDir/template_override") into("$projectDir/template_override")
rename("module.prop.tpl", "module.prop") rename("module.prop.tpl", "module.prop")
expand("moduleId" to moduleId, expand("moduleId" to moduleId,
"versionName" to versionName, "versionName" to verName,
"versionCode" to versionCode, "versionCode" to verCode,
"authorList" to authors, "authorList" to authors,
"apiCode" to apiCode, "apiCode" to apiCode,
"minApi" to "$moduleMinRiruApiVersion") "minApi" to "$moduleMinRiruApiVersion")

View File

@ -13,4 +13,3 @@
#Sat Jan 30 19:20:27 CST 202130.0.322.0.7026061 #Sat Jan 30 19:20:27 CST 202130.0.322.0.7026061
android.useAndroidX=true android.useAndroidX=true
android.enableJetifier=true android.enableJetifier=true
android.prefabVersion=1.1.2

Binary file not shown.

View File

@ -1,6 +1,5 @@
#Wed Feb 10 17:44:10 CST 2021
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-all.zip

53
gradlew vendored
View File

@ -1,5 +1,21 @@
#!/usr/bin/env sh #!/usr/bin/env sh
#
# Copyright 2015 the original author or authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
############################################################################## ##############################################################################
## ##
## Gradle start up script for UN*X ## Gradle start up script for UN*X
@ -28,7 +44,7 @@ APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"` APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS="" DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value. # Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum" MAX_FD="maximum"
@ -66,6 +82,7 @@ esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM. # Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
@ -109,10 +126,11 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi fi
# For Cygwin, switch paths to Windows format before running java # For Cygwin or MSYS, switch paths to Windows format before running java
if $cygwin ; then if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"` APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"` JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath # We build the pattern for arguments to be converted via cygpath
@ -138,19 +156,19 @@ if $cygwin ; then
else else
eval `echo args$i`="\"$arg\"" eval `echo args$i`="\"$arg\""
fi fi
i=$((i+1)) i=`expr $i + 1`
done done
case $i in case $i in
(0) set -- ;; 0) set -- ;;
(1) set -- "$args0" ;; 1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;; 2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;; 3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;; 4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac esac
fi fi
@ -159,14 +177,9 @@ save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " " echo " "
} }
APP_ARGS=$(save "$@") APP_ARGS=`save "$@"`
# Collect all arguments for the java command, following the shell quoting and substitution rules # Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi
exec "$JAVACMD" "$@" exec "$JAVACMD" "$@"

43
gradlew.bat vendored
View File

@ -1,3 +1,19 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off @if "%DEBUG%" == "" @echo off
@rem ########################################################################## @rem ##########################################################################
@rem @rem
@ -13,15 +29,18 @@ if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0 set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME% set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS= set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe @rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1 %JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init if "%ERRORLEVEL%" == "0" goto execute
echo. echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
@ -35,7 +54,7 @@ goto fail
set JAVA_HOME=%JAVA_HOME:"=% set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init if exist "%JAVA_EXE%" goto execute
echo. echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
@ -45,28 +64,14 @@ echo location of your Java installation.
goto fail goto fail
:init
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
:execute :execute
@rem Setup the command line @rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle @rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end :end
@rem End local scope for the variables with windows NT shell @rem End local scope for the variables with windows NT shell

View File

@ -22,13 +22,13 @@ plugins {
kotlin("android") kotlin("android")
} }
android { val androidTargetSdkVersion: Int by rootProject.extra
val androidTargetSdkVersion: Int by extra val androidBuildToolsVersion: String by rootProject.extra
val androidBuildToolsVersion: String by extra val androidMinSdkVersion: Int by rootProject.extra
val androidMinSdkVersion: Int by extra val androidSourceCompatibility: JavaVersion by rootProject.extra
val androidSourceCompatibility: JavaVersion by extra val androidTargetCompatibility: JavaVersion by rootProject.extra
val androidTargetCompatibility: JavaVersion by extra
android {
compileSdkVersion(androidTargetSdkVersion) compileSdkVersion(androidTargetSdkVersion)
buildToolsVersion(androidBuildToolsVersion) buildToolsVersion(androidBuildToolsVersion)
@ -46,7 +46,7 @@ android {
} }
compileOptions { compileOptions {
sourceCompatibility(androidSourceCompatibility) sourceCompatibility = androidSourceCompatibility
targetCompatibility(androidTargetCompatibility) targetCompatibility = androidTargetCompatibility
} }
} }

View File

@ -2,7 +2,10 @@ plugins {
`java-library` `java-library`
} }
val androidSourceCompatibility: JavaVersion by rootProject.extra
val androidTargetCompatibility: JavaVersion by rootProject.extra
java { java {
sourceCompatibility = extra["androidSourceCompatibility"] as JavaVersion sourceCompatibility = androidSourceCompatibility
targetCompatibility = extra["androidTargetCompatibility"] as JavaVersion targetCompatibility = androidTargetCompatibility
} }

View File

@ -3,15 +3,16 @@ plugins {
kotlin("android") kotlin("android")
} }
android { val androidTargetSdkVersion: Int by rootProject.extra
val androidTargetSdkVersion: Int by extra val androidCompileSdkVersion: Int by rootProject.extra
val androidCompileSdkVersion: Int by extra val androidMinSdkVersion: Int by rootProject.extra
val androidMinSdkVersion: Int by extra val androidBuildToolsVersion: String by rootProject.extra
val androidBuildToolsVersion: String by extra val androidSourceCompatibility: JavaVersion by rootProject.extra
val androidSourceCompatibility: JavaVersion by extra val androidTargetCompatibility: JavaVersion by rootProject.extra
val androidTargetCompatibility: JavaVersion by extra
android {
compileSdkVersion(androidCompileSdkVersion) compileSdkVersion(androidCompileSdkVersion)
buildToolsVersion(androidBuildToolsVersion)
defaultConfig { defaultConfig {
minSdkVersion(androidMinSdkVersion) minSdkVersion(androidMinSdkVersion)