jar文件和aar文件的区别
点击‘com‘文件夹就会看到里面全部是‘.class’文件。
PS: JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR。JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。为 J2EE 应用程序创建的 JAR 文件是 EAR 文件(企业 JAR 文件)。JAR 文件格式提供了许多优势和功能,其中很多是传统的压缩格式如 ZIP 或者 TAR 所没有提供的。它们包括: 安全性、减少下载时间、传输平台扩展、包密封、包版本控制、可移植性
*.aar文件中包含所有资源,class以及res资源文件。
二、生成aar文件和jar文件。
1.生成jar文件。
在Android Studio中,在某一个Module的Gradle脚本开头声明
- apply plugin: 'com.android.library'
2.生成aar文件。
在Android Studio中,在某一个Module的Gradle脚本开头声明
- apply plugin: 'com.android.library'
三、使用。
1. *.jar文件使用。
*.jar文件拷贝到libs目录,eclipse直接导入即可,AndroidStudio项目中添加:
- dependencies {
- compile fileTree(include: ['*.jar'], dir: 'libs')
- }
2. *.aar文件使用。
*.aar文件使用有两种方式,一种是使用在线的(网上的),一种是添加本地的*.aar文件。网络加载,只要你知道*.aar文件在maven中的路径即可,此处不演示了。下面主要看看在Android Studio中如何加载本地的*.aar文件。
(1).把aar文件放在一个文件目录内,比如就放在libs目录内;
(2).在app的build.gradle文件添加如下内容;
- repositories {
- flatDir {
- dirs 'libs'
- }
- }
(3).之后只需要添加一句gradle依赖便方便的引用了该aar文件;
- dependencies {
- ...
- compile(name:'test', ext:'aar')
- ...
- }
可能有的朋友还有疑问,“如何在Eclipse中使用aar文件“”,这里就不讲解了,建议尽快更换为Android Studio吧!
四、小结。
在什么情况下使用*.jar文件?在什么情况下使用*.aar文件呢?
如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。