"伪"由于缺少jar,因此在需要签名时,没有代码且只有依赖项的子项目失败

时间:2014-07-20 11:16:42

标签: gradle

我想创建一个子项目,作为依赖项的唯一锚点,即。它不包含任何源代码。用户可以简单地依赖子项目创建的工件来获取所有必需的依赖项。所以我创建了foo-bar / build.gradle:

dependencies {
    compile project(":foo-barz")
    compile project(":foo-batz")
}
jar {
    enabled = false
}

在签名进入构建过程之前,这似乎按预期工作。然后我收到错误消息

  

:foo-bar:signArchives FAILED

     

出了什么问题:任务执行失败':foo-bar:signArchives' >   java.io.FileNotFoundException:   /data/flo/code/foo/foo-bar/build/libs/foo-bar-4.0.1.jar(没有这样的文件   或目录)

如何告诉签名插件需要只签署此子项目的pom文件?

2 个答案:

答案 0 :(得分:1)

我要么说要么不应用java插件,那么你也不需要禁用jar任务,或者也禁用signArchives任务,就像你禁用了jar任务。

答案 1 :(得分:0)

我想出了用

创建一个空文件

foo-bar/src/main/java/org/foo/bar/FooBarDummy.java

以便所有任务都满意并创建,签名和部署空jar。向Peter Niederwieser,Vampire和Daryl Teo致敬。我发现没有一个优雅的简单解决方案来避免Dummy.java的解决方法。

此问题基于实施smack-java7