我的项目有一个父项目和一些包含项目。沿着这些,一个叫做FileEncrypter,一个叫做ListenerPattern。 我在父项目中有以下脚本:
subprojects{
apply plugin: 'eclipse'
apply plugin: 'maven'
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile fileTree(dir: 'build', include: '*.jar')
testCompile 'junit:junit:4.12'
testCompile 'org.slf4j:slf4j-simple:1.6.1'
}
task export(type: Jar) << {
manifest {
attributes 'Implementation-Title': 'Exported jar',
'Implementation-Version': version
}
sourceCompatibility = 1.7
baseName = "$it.project.name"
println baseName
println sourceSets.main.java
from { sourceSets.main.java }
with jar
}
}
在这两个项目中,我删除了构建目录。接下来,我对每个单独运行gradle build
,而不是父项目。在这两个项目中,build文件夹重新出现,包含一个libs
文件夹,其中包含一个jar文件。正如预期的那样,jar文件包含文件夹META-INF
和nl
。 (文件夹nl包含该软件包内容的其余部分。)
现在两个人都跑gradle export
。我再次查看jar文件,它们只有META-INF
文件。所以我的问题是,世界上哪些地方可能出错?这很好,直到不久之前。