您的位置:首页 > 移动开发 > Android开发

android 打包第三方jar包

2014-03-05 18:37 225 查看
转自:http://www.yoyong.com/archives/254

android项目开发时会用到第三方提供的jar包,通常情况下按照eclipse导入jar包的方法(选择项目,右键点击Build Path,Build Path–>Add Libraries–>User Library–>Next–>User Libraries–>New–>Add JARs,选择第三方的jar包),就可以将jar包导入到项目。

根据这样的打包方式时,eclipse导入jar包后,eclipse编译器也能识别,即项目不会因为缺少jar包而报错,但是运行android程序的时候却没有找到包而报错了。APK文件也很小,也就是jar包并没有打包到APK文件中。

在android项目中找到.classpath文件并打开,文件代码如下:

   
<?xml version="1.0" encoding="UTF-8"?>  
<classpath>  
<classpathentry kind="src" path="src"/>  
<classpathentry kind="src" path="gen"/>  
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>  
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/box2d"/>  
<classpathentry kind="output" path="bin"/>  
</classpath>  

发现eclipse导入包操作后,写入了这行代码

<classpathentry kind=”con” path=”org.eclipse.jdt.USER_LIBRARY/box2d”/>

这行代码应该是eclipse内部识别的,并不会打包到模拟器上,所以运行到模拟器上找不到相应的jar包。

为了在android内部能找到jar包,于是在android项目内新建一个lib文件夹,将jar包放在lib文件夹内。

并将上面的那行代码删除,添加一行代码:

<classpathentry kind=”lib” path=”lib/jbox2d-2.0.1-full.jar”/>

jbox2d-2.0.1-full.jar是lib文件下的jar包,可添加多个jar包。

即最终修改代码为:  

<?xml version="1.0" encoding="UTF-8"?>  
<classpath>  
<classpathentry kind="src" path="src"/>  
<classpathentry kind="src" path="gen"/>  
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>  
<classpathentry kind="lib" path="lib/jbox2d-2.0.1-full.jar"/>  
<classpathentry kind="output" path="bin"/>  
</classpath>  

最后刷新eclipse项目,会发现项目bin目录的APK文件大小增大,说明APK文件已经包含jar包文件,重新clean项目并运行即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: