您的位置:首页 > 其它

gradle--第八章 基本的管理依赖1

2015-09-12 09:06 253 查看
这一章介绍Gradle中的一些基本管理依赖

8.1 什么是管理依赖

笼统的讲,管理依赖有两部分组成,第一,Gradle需要知道你的工程需要编译和运行的东西都有哪些,为了找到他们,我们把这些引入的文件为这个工程的依赖。第二,Gradel需要编译以及上传你工程产生的一些文件,我们把这些输出文件为工程的发布文件。下面我们详细的来看这两部分:

大部分的工程都不只是包含自己,他们需要其他工程的文件来编译或者测试等等。例如,如果在你的工程中要使用Hibernate,当你编译工程时你需要在你的工程目录中包含一些Hibernate的jar文件。要运行我的测试例子,我可能也需要在我的测试路径中包含一些额外的jar包,例如一个特定的JDBC驱动获取Ehcache jar包。

这些引入的文件形成了工程的依赖文件。Gradle运行你告诉他你的工程都依赖那些文件,这样他就会注意到需要寻找这些依赖,使他们在你编译的时候可用。这些依赖可能需要从远程的Maven或Ivy仓库下载,或者在你的一个本地目录,又或者通过编译另外一个在多工程的环境中的工程,我们把这个过程称为依赖解决。

这个特性也是Gradle比较于Ant的一个主要优点,如果你使用的是Gradle,你只能通过描述相对或绝对路径来表示需要加载的jar文件。而如果使用Gradle,你只需要简单的定义你依赖包的名字,以及在那里可以找到这些依赖。通过在Ant中迁就Apache Ivy你可以达到相同的目的,当Gradle做的更好。

经常,这些工程的依赖文件本身自己也依赖于别的。例如,要运行Hibernate核心需要一些其他的库文件在器编译路径中,所以当Gradle为你的工程运行测试例子的时候,他也需要寻找到这些依赖并且使他们可用,我们把这个叫做传递依赖

大部分的工程的目的都是编译一些文件使他们在工程外部可以使用,例如,如果你的工程生成一个Java库文件,你需要生成一个jar文件,或者一个带源码的jar包,一些文档并且把他们发布到某个地方

工程的输出文件来自工程的发布。Gradle同样为你重点关注这个。你在你的工程中定义输出的文件,Gradle会编译他们并且把他们发布到某个地方。确切的说,"publishing"的意思依赖于你想要做什么,你可能想把文件拷贝到一个本地目录,或者把他们上传到一个远程的Maven或Ivy仓库。或者你只是想在你当前多工程构建的另外一个工程中使用他,我们把这个过程称之为发布。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: