diff --git a/build.gradle b/build.gradle index 98703cbdf..69b40b173 100644 --- a/build.gradle +++ b/build.gradle @@ -1,9 +1,9 @@ import com.diffplug.spotless.LineEnding plugins { - id 'org.sonarqube' version '2.7' + id 'org.sonarqube' version '2.7.1' id 'com.github.ben-manes.versions' version '0.21.0' - id "com.diffplug.gradle.spotless" version "3.21.1" + id "com.diffplug.gradle.spotless" version "3.23.1" } ext.jadxVersion = System.getenv('JADX_VERSION') ?: "dev" @@ -18,9 +18,6 @@ allprojects { version = jadxVersion tasks.withType(JavaCompile) { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - if (!"$it".contains(':jadx-samples:')) { options.compilerArgs << '-Xlint' << '-Xlint:unchecked' << '-Xlint:deprecation' } @@ -42,10 +39,10 @@ allprojects { testCompile 'ch.qos.logback:logback-classic:1.2.3' testCompile 'org.hamcrest:hamcrest-library:2.1' - testCompile 'org.mockito:mockito-core:2.25.1' + testCompile 'org.mockito:mockito-core:2.28.2' - testImplementation 'org.junit.jupiter:junit-jupiter-api:5.4.1' - testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.4.1' + testImplementation 'org.junit.jupiter:junit-jupiter-api:5.4.2' + testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.4.2' testCompile 'org.eclipse.jdt.core.compiler:ecj:4.6.1' } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 0d4a95168..5c2d1cf01 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 44e7c4d1d..f4d7b2bf6 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index cccdd3d51..b0d6d0ab5 100755 --- a/gradlew +++ b/gradlew @@ -1,5 +1,21 @@ #!/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 +# +# http://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 @@ -28,7 +44,7 @@ APP_NAME="Gradle" 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. -DEFAULT_JVM_OPTS="" +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" diff --git a/gradlew.bat b/gradlew.bat index e95643d6a..15e1ee37a 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -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 http://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 @rem ########################################################################## @rem @@ -14,7 +30,7 @@ set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% @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 if defined JAVA_HOME goto findJavaFromJavaHome diff --git a/jadx-cli/build.gradle b/jadx-cli/build.gradle index ef3659f6e..7edc177f7 100644 --- a/jadx-cli/build.gradle +++ b/jadx-cli/build.gradle @@ -1,7 +1,6 @@ -apply plugin: 'application' - -mainClassName = 'jadx.cli.JadxCLI' -applicationName = 'jadx' +plugins { + id 'application' +} dependencies { compile(project(':jadx-core')) @@ -9,6 +8,12 @@ dependencies { compile 'ch.qos.logback:logback-classic:1.2.3' } +application { + applicationName = 'jadx' + mainClassName = 'jadx.cli.JadxCLI' + applicationDefaultJvmArgs = ['-Xms128M', '-Xmx4g', '-XX:+UseG1GC'] +} + applicationDistribution.with { into('') { from '../.' @@ -17,11 +22,3 @@ applicationDistribution.with { include 'LICENSE' } } - -startScripts { - defaultJvmOpts = ['-Xms128M', '-Xmx4g', '-XX:+UseG1GC'] - doLast { - def str = windowsScript.text - windowsScript.text = str - } -} diff --git a/jadx-core/build.gradle b/jadx-core/build.gradle index 6c968887c..d3607a5c3 100644 --- a/jadx-core/build.gradle +++ b/jadx-core/build.gradle @@ -3,7 +3,7 @@ ext.jadxClasspath = 'clsp-data/android-5.1.jar' dependencies { runtime files(jadxClasspath) - compile files('lib/dx-1.16.jar') + compile files('lib/dx-1.16.jar') // TODO: dx don't support java version > 9 (53) compile 'org.ow2.asm:asm:7.1' compile 'org.jetbrains:annotations:17.0.0' @@ -14,7 +14,7 @@ dependencies { compile('org.smali:smali:2.2.7') { exclude group: 'com.google.guava' } - compile 'com.google.guava:guava:27.1-jre' + compile 'com.google.guava:guava:28.0-jre' - testCompile 'org.apache.commons:commons-lang3:3.8.1' + testCompile 'org.apache.commons:commons-lang3:3.9' } diff --git a/jadx-gui/build.gradle b/jadx-gui/build.gradle index 169e45aea..f54550ed2 100644 --- a/jadx-gui/build.gradle +++ b/jadx-gui/build.gradle @@ -1,29 +1,28 @@ plugins { - id 'edu.sc.seis.launch4j' version '2.4.5' + id 'application' + id 'edu.sc.seis.launch4j' version '2.4.6' id 'com.github.johnrengelman.shadow' version '5.0.0' } -apply plugin: 'application' - -mainClassName = 'jadx.gui.JadxGUI' - -sourceCompatibility = JavaVersion.VERSION_1_8 -targetCompatibility = JavaVersion.VERSION_1_8 - dependencies { compile(project(":jadx-core")) compile(project(":jadx-cli")) - compile 'com.fifesoft:rsyntaxtextarea:3.0.2' + compile 'com.fifesoft:rsyntaxtextarea:3.0.3' compile files('libs/jfontchooser-1.0.5.jar') compile 'hu.kazocsaba:image-viewer:1.2.3' - compile 'org.apache.commons:commons-lang3:3.8.1' + compile 'org.apache.commons:commons-lang3:3.9' compile 'org.apache.commons:commons-text:1.6' - compile 'io.reactivex.rxjava2:rxjava:2.2.7' - compile "com.github.akarnokd:rxjava2-swing:0.3.4" - compile 'com.android.tools.build:apksig:3.3.2' + compile 'io.reactivex.rxjava2:rxjava:2.2.10' + compile "com.github.akarnokd:rxjava2-swing:0.3.7" + compile 'com.android.tools.build:apksig:3.4.1' +} + +application { + applicationName = 'jadx-gui' + mainClassName = 'jadx.gui.JadxGUI' } applicationDistribution.with { @@ -70,6 +69,7 @@ launch4j { initialHeapPercent = 5 maxHeapSize = 4096 maxHeapPercent = 70 + downloadUrl = 'https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=hotspot#x64_win' } test { diff --git a/jadx-samples/build.gradle b/jadx-samples/build.gradle index e21f7e857..c5db279d7 100644 --- a/jadx-samples/build.gradle +++ b/jadx-samples/build.gradle @@ -11,6 +11,9 @@ dependencies { compileJava { options.compilerArgs << '-g:none' + if (JavaVersion.current() > JavaVersion.VERSION_1_8) { + options.compilerArgs.addAll('--release 8'.split(' ')) + } } task samplesRun(type: JavaExec, dependsOn: compileJava) {