Gradle build不';t生成jar
我想将我的项目构建为一个只包含我的代码的jar文件。此项目jar用作其他java项目的库 这是我的身材。格雷德尔: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
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任务。另见