Android的引用jar包

简介:
先来个基础的,在eclips里在工程名上右键->build path->contigure bud path->java build path里有个几个选项
add external jars  = 增加工程外部的包
add jars = 增加工程内包
add library = 增加一个库
add class folder = 增加一个类文件夹

下面着重介绍add library中的User Libraries
添加User Library,具体做法如下:
1. 选中工程右键->build path->Add Libraries...
2. 选择User Library->next
3. 点击User Library按钮
4. 点击new按钮
5. 输入Library name(我要导入的是struts 2.1.6的jar包和jdbc的jar包,为了方便记忆,就可以用如Struts 2.1.6 Library)
6.点击ok
7.选中该user library, 然后点击add jars
8.找到对应jar包,依次确定即可。
 
User Liberary加到Eclipse中,只是eclipse中生效,就是只有Eclipse知道那些引用的类放在哪里,但是如果你要web工程启动正常,是要告诉Tomcat等容器,你的jar包是在哪里(放在lib目录下,容器就知道了)。所以就有这种情况出现,在eclipse中加用户库,只是为了调试,不加入用户库,eclipse找不到import的类,就会出现红色的X号,不把用户库中的JAR包放到lib下,容量找不到引入的类,就会报错。
add jar 和add external jars 与add library 中User Libraries的区别是:
通过“add jar” 和“add external jars”添加的jar包作为程序的一部分被打包到最终的程序中。通过“User Libraries”添加的jar包不是。


关于Jar包 build path的作用:
jar包不能在随意的地方。 不管是Java Application 还是 Java Web Application 。
Java虚拟机是根据Java ClassLoader(类加载器)决定如何,到那里去加载Class :
我们之所以把jar包放在classPath下,是因为存在ClassPath ClassLoader
我们之所以可以不在ClassPath指定一些Jar包,但在Java程序中也能使用。
那是因为有ClassPath ClassLoader的父类加载器负责加载。如jrd目录下jre\lib\*.jar
我们之所以把Jar包放入webroot下的lib文件夹,并且可以在我们的程序中使用,那是容器实现了自己的ClassLoader。(Web中间件服务器类加载的机制和sun公司提供的3个默认加载器不同。)
所以说能不能加载Jar,加载哪里的Jar,是根据ClassLoader决定的。

在android中有些公共资源可以共用,封装成jar包。可以保护Activity等android资源,但是不能加res和AndroidManifest.xml,所以图片之类的资源需要放在assert来引用,还要注明一点的是*.9.png需要被appt工具处理过的,可以调用命令行处理一下,懒一点就输出个apk,然后从包里把图抠出来。

1, Export Library
1.1 Prepare source code
1.1.1 Create an Android project
1.1.2 Create source code, and fix all bug
1.1.3 remove AndroidManifest.xml
1.1.4 remove res/drawable/icon.png
1.2 Export library
1.2.1 On Package Explorer of Eclipse, right-click created project, and select Export
1.2.2 Select Jave -> JAR file, then press \”Next\”
1.2.3 Select resources to export, then press \”Next\”
1.2.4 Press \”Next\”
1.2.5 Press \”Finish\”
Then the library is created.

在引用包的工程中需要在AndroidManifest.xml中补充对应的Activity,Service等组件信息。Add External Jar或者Add library,引入jar即可。





本文转自王磊的博客博客园博客,原文链接:http://www.cnblogs.com/vipstone/archive/2012/12/07/2806720.html,如需转载请自行联系原作者


目录
相关文章
|
3天前
|
存储 Java API
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
92 0
|
3天前
|
Java Docker 容器
|
3天前
|
运维 Java Shell
Linux非常详细的shell运维脚本一键启动停止状态SpringBoot打成可运行jar包
Linux非常详细的shell运维脚本一键启动停止状态SpringBoot打成可运行jar包
39 0
|
3天前
|
Java Maven 微服务
springboot项目开启远程调试-jar包
springboot项目开启远程调试-jar包
26 0
|
3天前
|
Java 测试技术 Maven
maven 打jar包:mvn clean package
maven 打jar包:mvn clean package
31 7
|
3天前
|
Java Maven
向 Maven 中央仓库上传一个修改过的基于jeecg的autoPOI的 jar包记录(一)
向 Maven 中央仓库上传一个修改过的基于jeecg的autoPOI的 jar包记录
18 0
|
3天前
|
Java 开发工具 Android开发
如何在Eclipse中查看Android源码或者第三方组件包源码(转)
如何在Eclipse中查看Android源码或者第三方组件包源码(转)
15 4
|
3天前
|
Java Go Maven
向 Maven 中央仓库上传一个修改过的基于jeecg的autoPOI的 jar包记录(二)
向 Maven 中央仓库上传一个修改过的基于jeecg的autoPOI的 jar包记录
12 0
|
3天前
|
前端开发 Java Linux
宝塔Linux:部署His医疗项目通过jar包的方式
宝塔Linux:部署His医疗项目通过jar包的方式
|
3天前
|
Java Android开发
Android module 打包成aar或jar
Android module 打包成aar或jar
14 0