起因
我想给一个java的gradle项目打jar包. 不想使用IDEA的Build Artifacts, 而是直接用gradle jar.
经过
请写build.gradle文件. 如下是一个实例:
plugins {
    id 'java'
    id 'java-library'
}
group 'org.team54'
version ''
sourceCompatibility = 1.11
repositories {
    mavenCentral()
}
dependencies {
    // https://mvnrepository.com/artifact/com.google.code.gson/gson
    implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.8'
    // https://mvnrepository.com/artifact/com.alibaba/fastjson
    implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.78'
    // https://mvnrepository.com/artifact/org.projectlombok/lombok
    compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.20'
    annotationProcessor group: 'org.projectlombok', name: 'lombok', version: '1.18.20'
    // https://mvnrepository.com/artifact/args4j/args4j
    implementation group: 'args4j', name: 'args4j', version: '2.32'
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}
tasks.named('jar') {
    manifest {
        attributes('Implementation-Title': project.name,
                'Main-Class': 'org.team54.app.ChatPeer'
        )
    }
    // fat jar with all dependencies
    from {
        configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it)}
    }
}
test {
    useJUnitPlatform()
}
结果
打jar包, 请.
