我正在尝试制作一个胖子然后移动它。影子插件在我身上失败,说无法找到插件。我正在努力创造一个胖子。
我有这个移动文件很好但它包含每个jar文件,我只想要一个大文件然后移动它:
task copyJarIntoDockerDirectory(type: Copy) {
dependsOn jar
from configurations.runtime
from jar
into '../docker/ekomi-import'
rename '(.*)-[0-9]+\\..*.jar', '$1.jar'
doFirst { println 'before copy' }
doLast { println 'after copy' }
}
答案 0 :(得分:1)
您可以在Gradle 3.0+中使用com.github.jengelman.gradle.plugins:shadow:2.0.2
插件。您的最小build.gradle
文件可能如下所示:
buildscript {
repositories {
jcenter()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "com.github.jengelman.gradle.plugins:shadow:2.0.2"
}
}
apply plugin: "com.github.johnrengelman.shadow"
task copyJarIntoDockerDirectory(type: Copy) {
dependsOn shadowJar
from 'build/libs/'
into 'docker/ekomi-import'
}
在我的案例中,最终JAR被称为products-service-all.jar
。我跑的时候:
gradle clean copyJarIntoDockerDirectory && tree docker
我在bash控制台中获得以下输出:
products-service [master●●●] % gradle clean copyJarIntoDockerDirectory && tree docker
BUILD SUCCESSFUL in 3s
5 actionable tasks: 5 executed
docker
└── ekomi-import
└── products-service-all.jar
1 directory, 1 file
希望它有所帮助。