Gradle依赖项:编译项目和编译名称有什么区别?

nie*_*umi 6 android gradle

示例代码

dependencies {    
    compile project (':aProject')
    compile name: 'somefile'
    compile files('libs/something_local.jar')
    compile 'com.google.code.gson:gson:2.3.1'
}
Run Code Online (Sandbox Code Playgroud)

我的问题是

  1. compile projectcompile name这里有什么区别?

  2. compile name一样的compile files吗?

  3. 什么时候compile直接使用,如第5行代码所示

  4. 是什么compile在这里做?它是在编译括号/单引号内的文件吗?我可以使用像'build'之类的东西吗?

Nav*_*yle 5

编译意味着,它正在编译其他的库以用于您的项目

编译项目(':aProject')

  • 它从您的项目编译模块

编译文件('libs/something_local.jar')

  • 它编译项目中的文件(通常是在lib目录下)

编译名称:'something_local'

编译(名称:'something_local',分机:'jar')

  • 它与编译文件相同,但是您指示存储库的文件目录(例如从远程存储库编译,但它来自本地)

编译'com.google.code.gson:gson:2.3.1'

  • 它从maven存储库编译库,您可以使用它而不是克隆库项目并将其放入项目中.