You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
91 lines
3.0 KiB
Kotlin
91 lines
3.0 KiB
Kotlin
// Copyright 2021 yuyezhong@gmail.com
|
|
//
|
|
// 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.
|
|
|
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
|
|
|
plugins {
|
|
kotlin("jvm") version "2.1.0"
|
|
application
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
constraints {
|
|
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
|
|
}
|
|
|
|
//kotlin
|
|
implementation(platform("org.jetbrains.kotlin:kotlin-bom"))
|
|
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
|
|
|
implementation("cc.cfig:io:0.2")
|
|
implementation("ch.qos.logback:logback-classic:1.4.14")
|
|
implementation("com.fasterxml.jackson.core:jackson-annotations:2.14.0")
|
|
implementation("com.fasterxml.jackson.core:jackson-databind:2.14.0")
|
|
implementation("com.google.guava:guava:33.0.0-jre")
|
|
implementation("org.apache.commons:commons-exec:1.3")
|
|
implementation("org.apache.commons:commons-compress:1.26.0")
|
|
implementation("org.tukaani:xz:1.9")
|
|
implementation("commons-codec:commons-codec:1.15")
|
|
implementation("junit:junit:4.13.2")
|
|
implementation("org.bouncycastle:bcprov-jdk15on:1.70")
|
|
implementation("de.vandermeer:asciitable:0.3.2")
|
|
implementation("com.github.freva:ascii-table:1.8.0")
|
|
implementation("com.google.protobuf:protobuf-java:3.21.7")
|
|
implementation(project(":helper"))
|
|
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test")
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
|
|
}
|
|
|
|
application {
|
|
mainClass.set("cfig.packable.PackableLauncherKt")
|
|
}
|
|
|
|
java {
|
|
sourceCompatibility = JavaVersion.VERSION_11
|
|
targetCompatibility = JavaVersion.VERSION_11
|
|
}
|
|
|
|
tasks.withType<KotlinCompile>().all {
|
|
kotlinOptions {
|
|
freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn"
|
|
freeCompilerArgs += "-opt-in=kotlin.ExperimentalUnsignedTypes"
|
|
jvmTarget = "11"
|
|
}
|
|
}
|
|
|
|
tasks {
|
|
jar {
|
|
manifest {
|
|
attributes["Implementation-Title"] = "Android image reverse engineering toolkit"
|
|
attributes["Main-Class"] = "cfig.packable.PackableLauncherKt"
|
|
}
|
|
from(configurations.runtimeClasspath.get().map({ if (it.isDirectory) it else zipTree(it) }))
|
|
excludes.addAll(mutableSetOf("META-INF/*.RSA", "META-INF/*.SF", "META-INF/*.DSA"))
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
dependsOn(":helper:jar")
|
|
}
|
|
test {
|
|
testLogging {
|
|
showExceptions = true
|
|
showStackTraces = true
|
|
}
|
|
}
|
|
}
|