1 Star 1 Fork 0

fanhoucheng / ros_bridge_kotlin

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
build.gradle.kts 1.69 KB
一键复制 编辑 原始数据 按行查看 历史
fanhoucheng 提交于 2022-04-06 14:14 . no message
import org.gradle.jvm.tasks.Jar
plugins {
kotlin("jvm") version "1.5.31"
java
}
group = "cn.com.fhc"
version = "1.0.1"
repositories {
mavenCentral()
}
dependencies {
implementation(kotlin("stdlib"))
//此方式编译不报错,运行时会报找不到class
// implementation("org.glassfish.tyrus.bundles:tyrus-standalone-client-jdk:2.0.2")
// implementation("javax.json:javax.json-api:1.1.4")
implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))
}
sourceSets {
}
java {
withSourcesJar()
// withJavadocJar()
}
// Terminal ./gradlew build ./gradlew jar ./gradlew fatjar
tasks.jar {
// manifest.attributes["Main-Class"] = "com.example.MyMainClass"
manifest.attributes["Class-Path"] = configurations
.runtimeClasspath
.get()
.joinToString(separator = " ") { file ->
"libs/${file.name}"
}
}
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
kotlinOptions {
jvmTarget = "11"
}
}
//tasks.getByName<Test>("test") {
// useJUnitPlatform()
//}
//val mainClass = "cn.com.fhc.Main" // replace it!
tasks {
register("fatJar", Jar::class.java) {
archiveClassifier.set("all")
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
manifest {
// attributes("Main-Class" to mainClass)
}
from(configurations.runtimeClasspath.get()
.onEach { println("add from dependencies: ${it.name}") }
.map { if (it.isDirectory) it else zipTree(it) })
val sourcesMain = sourceSets.main.get()
sourcesMain.allSource.forEach { println("add from sources:${it.absolutePath} ") }
from(sourcesMain.output)
}
}
Kotlin
1
https://gitee.com/fanhoucheng/ros_bridge.git
git@gitee.com:fanhoucheng/ros_bridge.git
fanhoucheng
ros_bridge
ros_bridge_kotlin
master

搜索帮助