gradle에서 jar에서 특정 패키지만 제거
이번은 kotlin compiler 에서
com/intellij/**
부하의 패키지를 제거한 jar를 생성한다.build.gradle
configurations {
kotlinCompiler { transitive = false }
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
kotlinCompiler ("org.jetbrains.kotlin:kotlin-compiler:$kotlin_version")
compile files("$libsDir/tweaked-kotlin-compiler.jar")
}
task tweakKotlinCompiler(type: Jar) {
from zipTree(configurations.kotlinCompiler.singleFile).matching {
exclude "com/intellij/**"
}
destinationDir libsDir
archiveName 'tweaked-kotlin-compiler.jar'
}
compileKotlin.dependsOn tweakKotlinCompiler
kotlin-compiler-1.2.10.jar
zipTree에서 특정 패키지를 제외하고 새로운 jar를 생성합니다.특정의 패키지만 취득하고 싶은 경우는, include 하면 가능.
전체
build.gradle
buildscript {
ext.kotlin_version = '1.2.10'
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
plugins {
id 'org.jetbrains.intellij' version '0.2.18'
}
group 'com.github.bassaer'
version '0.0.1'
apply plugin: 'kotlin'
repositories {
mavenCentral()
}
configurations {
kotlinCompiler { transitive = false }
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
kotlinCompiler ("org.jetbrains.kotlin:kotlin-compiler:$kotlin_version")
compile files("$libsDir/tweaked-kotlin-compiler.jar")
}
task tweakKotlinCompiler(type: Jar) {
from zipTree(configurations.kotlinCompiler.singleFile).matching {
exclude "com/intellij/**"
}
destinationDir libsDir
archiveName 'tweaked-kotlin-compiler.jar'
}
compileKotlin() {
kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "1.8"
}
intellij {
version '2017.3.3'
}
patchPluginXml {
changeNotes """
Add change notes here.<br>
<em>most HTML tags may be used</em>"""
}
compileKotlin.dependsOn tweakKotlinCompiler
Reference
이 문제에 관하여(gradle에서 jar에서 특정 패키지만 제거), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/bassaer/items/0b1fdf4a4ba0462afed8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)