Gradle build不';t生成jar

Gradle build不';t生成jar,gradle,intellij-idea,jar,build.gradle,Gradle,Intellij Idea,Jar,Build.gradle,我想将我的项目构建为一个只包含我的代码的jar文件。此项目jar用作其他java项目的库 这是我的身材。格雷德尔: plugins { id 'java' } group 'com.my.lib' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } task sourcesJar(type: Jar) { archiveClassifier = 'sour

我想将我的项目构建为一个只包含我的代码的jar文件。此项目jar用作其他java项目的库

这是我的身材。格雷德尔:

plugins {
    id 'java'
}

group 'com.my.lib'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

task sourcesJar(type: Jar) {
    archiveClassifier = 'sources'
    from sourceSets.main.allJava
}


dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
}
构建项目后(我使用IntelliJ,我单击了“构建”==>“重建项目”)。IntelliJ告诉我构建成功,但我没有看到创建任何jar。为什么?

18:30:18: Executing tasks ':classes :testClasses'...

> Task :compileJava
> Task :processResources NO-SOURCE
> Task :classes
> Task :compileTestJava
> Task :processTestResources NO-SOURCE
> Task :testClasses

BUILD SUCCESSFUL in 0s
2 actionable tasks: 2 executed
18:30:18: Tasks execution finished ':classes :testClasses'.

我发现即使我有这些设置,当我选择Build->Build project时,Intellij仍然没有运行Gradle Build,这就是为什么在我最初的问题中没有显示“sourceJar”。我必须打开“Gradle工具”窗口,点击小象图标来运行Gradle任务。然后,键入“Gradle build”,然后运行源Jar任务。

IntelliJ IDEA的“build Project”表单将编译代码供IDE使用,它与Gradle的
build
生命周期任务没有直接联系

为了让Gradle构建JAR,您需要运行
/gradlew assembly
,这将产生预期的结果。 请注意,这不会运行测试或静态分析。如果您想让它也运行,可以使用
/gradlew build


这两个Gradle任务都可以从IntelliJ IDEA中的Gradle工具窗口执行。

使用IDE使用设置页面创建Jar。如果要使用Gradle创建jar归档文件,请使用相应的Gradle任务。另见