更新依赖后,我使用maven的gradle init
将项目转换为gradle。 gradle test
可以正常工作。但是,当我运行gradle build
时,生成的jar文件完全为空。
我试图调整源集以使某些事情发生,但这似乎并不能解决问题。目录结构与gradle期望的完全一致,我可以告诉所有内容嵌套在src/main/groovy
中
项目的full code is available on Github。
通常,什么原因导致没有文件添加到构建中?除了gradle init
创建的内容之外,是否还需要添加其他配置?
Gradle构建文件:
plugins {
id 'java'
id 'maven-publish'
}
repositories {
mavenLocal()
mavenCentral()
jcenter()
}
dependencies {
implementation 'org.codehaus.groovy:groovy-all:3.0.5'
implementation 'com.github.javafaker:javafaker:1.0.2'
testImplementation 'org.spockframework:spock-core:2.0-M3-groovy-3.0'
testCompileOnly 'org.projectlombok:lombok:1.18.12'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.12'
}
group = 'nl.topicus.overheid'
version = '0.2.0'
description = 'java-factory-bot'
sourceCompatibility = '1.8'
publishing {
publications {
maven(MavenPublication) {
from(components.java)
}
}
}
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
}
最佳答案
现在正在进行的项目是尝试以Java项目的形式构建并从src / main / java获取src,因为它是Java项目的默认设置。因此,您需要在id 'groovy'
部分中使用id 'java'
而不是plugins
来使其进入src / main / groovy并在其中构建.java和.groovy文件。
关于java - Gradle构建一个空的Jar文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63838834/