2013-05-28 38 views
1

原因:org.gradle.api.GradleException:无法创建ZIP '/jenkins/repository/workspace/profile/build/libs/../profile.jar'GradleException无法创建ZIP

Project 
    common << I build under this directory 
    profile 

build.gradle(in common) 
    ... 
    dependencies { 
    compile project(':../profile') 
    ... 

settings.gradle(in common) 
    include '../profile' 

它适用于Windows环境。不过,这并不对linux环境,甚至使用root帐户

回答

1

includeproject方法接受的项目路径是逻辑路径,而不是物理路径工作。它们不能包含..。物理路径必须在settings.gradle中单独声明(如果它们从逻辑路径转移)。声明平坦物理目录布局的最简单方法是使用includeFlat方法:

通用/ settings.gradle

includeFlat 'profile' 

通用/的build.gradle

dependencies { 
    compile project(':profile') 
} 

你可以找到更多信息在Gradle User Guide的“多项目构建”一章中讨论此主题。

0

在这里可能发生的另一个常见问题,特别是如果您使用Windows时,您可能已打开以前的jar在7zip或其他工具,并导致该文件被锁定。若要测试此操作,尝试删除位于build/libs中的jar文件,如果无法删除该文件,则该文件可能被另一个程序锁定。 :d

0

一个更短的方式来解决这个问题:以下行添加到build.gradle文件所包含的轮廓项目:

archivesBaseName = 'profile' 

这将覆盖罐子的默认名称。