如何将android源码生成eclipse可用的jar包

如何将android源码生成eclipse可用的jar包

如何将android源码生成eclipse可用的jar包

如何将android源码生成eclipse可用的jar包

2012-11-07 23:19 179人阅读评论(0) 收藏举报

以marvell的fm为例。

1.新建project

在eclipse上新建一project 选择General/Project 点击next,输入project name:将use default location的勾去掉后,点击下面的Browse按钮,载入android上的fmmanager 源码;点击finish;

这时会发现,新建的project有红叉,不过这不影响我们;

2.生成jar包

在上一步新建的project上右键,选择export ,Java/JAR file 点击next,出现的JAR file specifivation界面,这里呢可以将select the resources to export下的右边框勾选的项去掉,

接着,在select the export destination中指定生成的jar包的位置;点击finish;这样就生成了可用在eclipse上的jar 包;

3导入jar包:

在需要引用jar包的project上右键选择最下面的properties,

选择Java Build Path,之后在右边的java bulid path中选择Libraries 选择add external JARS;找到刚才生成的jar包,完成后点击ok,这样会在当前项目下新建一Referenced Libraries 其中就包含了刚刚导入的jar包;这里我们最好将要导入的jar包放在需要引用jar包项目目录下;

Android Hotfix 新方案——Amigo 源码解读

Android Hotfix 新方案——Amigo 源码解读 首先我们先来看看如何使用这个库。 用法 在project 的build.gradle中 dependencies { classpath 'me.ele:amigo:0.0.3' } 在module 的build.gradle中 apply plugin: 'me.ele.amigo' 就这样轻松的集成了Amigo。 生效补丁包 补丁包生效有两种方式可以选择: ? 稍后生效补丁包 ? 如果不想立即生效而是用户第二次打开App 时才打入补丁包,则可以将新的Apk 放到/data/data/{your pkg}/files/amigo/demo.apk,第二次打开时就会自动生效。可以通过这个方法 ? File hotfixApk = Amigo.getHotfixApk(context); ?

获取到新的Apk。 同时,你也可以使用Amigo 提供的工具类将你的补丁包拷贝到指定的目录当中。 ? FileUtils.copyFile(yourApkFile, amigoApkFile); ? ? 立即生效补丁包 ? 如果想要补丁包立即生效,调用以下两个方法之一,App 会立即重启, 并且打入补丁包。 ? Amigo.work(context); ? Amigo.work(context, apkFile); ? 删除补丁包 如果需要删除掉已经下好的补丁包,可以通过这个方法 Amigo.clear(context); 提示:如果apk 发生了变化,Amigo 会自动清除之前的apk。 自定义界面 在热修复的过程中会有一些耗时的操作,这些操作会在一个新的进程中的Activity 中执行,所以你可以通过以下方式来自定义这个Activity。

Eclipse中指定第三方包JAR和类路径CLASSPATH的几个方法

在Java类中,我们可以通过“import + 包名+ 类名”的方式引用第三方包(jar)或者第三方类(class),但你得告诉Java编译和运行环境到哪里去找这些库或者类,如果这些没有设置好,就会出现类似于某某类无法解析,NoClassDefFoundError等问题。因此,我们必须通过Eclipse指定这些路径来告诉Jvava的开发和运行环境,到哪里去找这些包和类。 1,通过环境变量指定JAR包 Window->Preferences->Java->Build path->Classpath variables,用一个变量指定包的位置,类似于环境变量中设置CLASSPATH。由两个部分组成,一个是name,指定变量名;一个是file path,指定jar包所在位置,或者是folder,指定类文件所在文件夹。这样的好处是如果包的位置发生了变化,我们只需要回到这个地方修改jar包和类的位置,而项目中对于这些包和类的引用不需要修改。 2,通过建立用户库同时指定多个JAR包 Window->Preferences->Java->Build path->User libraries,创建一个用户库,可以向其中添加多个jar,因为可能有多个项目,而每个项目又可能同时引用多个同样的包(jar),把这些包放在同一个user libraries下,就可以让每个项目只引用这一个库就OK了,省去每次需要为每个项目添加多个包的麻烦。 3,指定项目开发中使用的jar(出现在package explorer的Referenced libraries中): project->properties->java build path->libraries 出现几种添加jar包的方式,这里分别解释一下 a,Add JARs... 添加项目内的jar包到项目的引用路径中。 有时候,我们会把一些第三方包放到我们的项目的文件夹中(比如a.jar),一般我们会给这个文件夹取名lib。方法是在Windows中,在Workspace/%项目目录%下建立一个新的文件夹,取名lib,然后把a.jar文件拷贝到lib中。回到Eclipse,在package explorer (包资源管理器)中点击右键,选择“Refresh(刷新)”,即可看到我们的lib文件夹和a.jar 文件。然后通过Add JARs...即可添加a.jar到项目引用。 b, Add External JARs 添加外部jar包到项目中。这样不好的地方在于外部jar包一旦更改位置,则必须重新配置项目,不如其他方式灵活,所以不建议使用。 c, Add variables 添加变量,添加1中定义的环境变量。 d, Add libraries 添加库,可以添加JRE System Library等,其中User Library是在2中你建立的用户库,而Junit则可快速的把Junit需要的包加入到当前项目的引用中来。 e, Add class folder 故名思意,添加类所在的文件夹 4,指定运行时使用的jar(运行时使用) 这里的JAR有两部分,一部分是JRE JAR,运行时环境下的系统JAR,一种是USER Entries,其中%项目名%子目录中是Package Explorer视图中Referenced Libraries中引用的jar。你可以在这里指定运行时JAR,只要放在Referenced Libraries中引用的jar 之前。 a, Run->Open run dialog->classpath b, Run->Open debug dialog->classpath

Android源码下载方法详解

Android: Android源码下载方法详解 分类:Android平台 安卓源码下载地址:https://www.360docs.net/doc/d116857430.html,/source/downloading.html 相信很多下载过内核的人都对这个很熟悉 git clone git://https://www.360docs.net/doc/d116857430.html,/kernel/common.git kernel 但是这是在以前,现在如果这么执行的话,会显示如下内容 Initialized empty Git repository in /home/star/working/kernel/.git/ https://www.360docs.net/doc/d116857430.html,[0: 149.20.4.77]: errno=Connection refused fatal: unable to connect a socket (Connection refused) 通过浏览器输入https://www.360docs.net/doc/d116857430.html,/,发现该网站已经被重定向为 https://www.360docs.net/doc/d116857430.html,/source/downloading.html 可以在该页面的最后发现内核的下载方法。 下面我们介绍一下Android源码下载的步骤。 工作环境: 操作系统:Ubuntu 10.04 或Ubuntu10.10 git程序:1.7.0.4 或1.7.1 转载请注明出处:https://www.360docs.net/doc/d116857430.html,/pku_android 方法一: 1.1 初始化安装环境 参考网页https://www.360docs.net/doc/d116857430.html,/source/initializing.html 主要要做的就是安装jdk和安装一些软件包 $ sudo apt-get install git-core gnupg flex bison gperf build-essential \ zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev \ libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown \ libxml2-utils 如果已经安装了,就不许要这步了 1.2 无论下载内核和源码,都需要进行如下操作 参考网页https://www.360docs.net/doc/d116857430.html,/source/downloading.html $ mkdir ~/bin $ PATH=~/bin:$PATH $ curl https://https://www.360docs.net/doc/d116857430.html,/dl/googlesource/git-repo/repo > ~/bin/repo 如果出现: repo init error: could not verify the tag 'v1.12.7',

Eclipse中将Java项目 打包为jar,并且引入第三方jar包 解决办法

如果自己的java project中需要引用额外的jar包作为资源文件,那么需要自定义配置文件MANIFEST.MF ,例如: Manifest-Version: 1.0 Class-Path: lib\crimson.jar lib\jbcl.jar lib\junit.jar lib\log4j-1.2.13.j ar lib\mysql-connector-java-3.1.13-bin.jar Main-Class: src.YourMainClassName 其中的Class-Path就指定了外来jar包的位置。请注意假设我们的项目打包后为pr oject.jar,那么按照上面的定义,应该在 project.jar的同层目录下建立一个lib 文件夹,并将相关的jar包放在里面。否则将会出现Exception in thread "main" https://www.360docs.net/doc/d116857430.html,ng.NoClassDefFoundError的错误。 注意:如果在Class-Path 中引入比较多的jar包,不要写成一行,不然会报:java. io.IOException : line too long ,需要分多行写,第二行以及下面的第三行、第四行写的时候需要在前面空两格(敲两下空格键)即可 最后介绍一下使用Eclipse制作jar包的过程吧: 1. 首先在Eclipse中打开项目,右键点击项目,选择“Export”; 2. 选择Java/JAR file,Next; 3. Select the resources to export中可以选择你想要包含的项目文件夹,一些不必要的文件夹就无需放进去了,免得增大空间; 这里有几个选项: * Export generated class files and resources 表示只导出生成的.clas s文件和其他资源文件 * Export all output folders for checked projects 表示导出选中项目 的所有文件夹 * Export java source file and resouces 表示导出的jar包中将包含你 的源代码*.java,如果你不想泄漏源代码,那么就不要选这项了 * Export refactorings for checked projects 把一些重构的信息文件也 包含进去 在Select the export destination中选择导出的jar的路径,Next 4. 下一页可以选择是否导出那些含有警告warning或者错误errors的*.class文件。一般不用理他,Next 5. 下一个页面里可以对项目做一些配置。 * Generate the manifest file是系统帮我们自动生成MANIFEST.MF文件,

Android源代码结构分析

目录 一、源代码结构 (2) 第一层次目录 (2) bionic目录 (3) bootloader目录 (5) build目录 (7) dalvik目录 (9) development目录 (9) external目录 (13) frameworks目录 (19) Hardware (20) Out (22) Kernel (22) packages目录 (22) prebuilt目录 (27) SDK (28) system目录 (28) Vendor (32)

一、源代码结构 第一层次目录 Google提供的Android包含了原始Android的目标机代码,主机编译工具、仿真环境,代码包经过解压缩后,第一级别的目录和文件如下所示: . |-- Makefile (全局的Makefile) |-- bionic (Bionic含义为仿生,这里面是一些基础的库的源代码) |-- bootloader (引导加载器),我们的是bootable, |-- build (build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具) |-- dalvik (JAVA虚拟机) |-- development (程序开发所需要的模板和工具) |-- external (目标机器使用的一些库) |-- frameworks (应用程序的框架层) |-- hardware (与硬件相关的库) |-- kernel (Linux2.6的源代码) |-- packages (Android的各种应用程序) |-- prebuilt (Android在各种平台下编译的预置脚本) |-- recovery (与目标的恢复功能相关) `-- system (Android的底层的一些库)

Android USB 驱动分析

Android USB 驱动分析 一、USB驱动代码架构和使用 1、代码简介 USB驱动代码在/drivers/usb/gadget下,有三个文件:android.c, f_adb.c, f_mass_storage.c;g_android.ko 是由这三个文件编译而来,其中android.c 依赖于 f_adb.c 和 f_mass_storage.c(这两个文件之间无依赖关系)。 可在android.c中看到: static int __init android_bind_config(struct usb_configuration *c) { struct android_dev *dev = _android_dev; int ret; printk(KERN_DEBUG "android_bind_config\n"); ret = mass_storage_function_add(dev->cdev, c, dev->nluns); if (ret) return ret; return adb_function_add(dev->cdev, c); } 2、驱动使用 要使USB mass storage连接到主机: 打开/sys/devices/platform/usb_mass_storage/lun0/file文件,向 file文件写入一个存储 设备的路径,例如/dev/block/vold/179:0 (major:minor)路径; 这里的usb_mass_storage根据实际应用可以改的,由 platform_device_register函数的参数决 定。 例如: static struct platform_device fsg_platform_device = { .name = "usb_mass_storage", .id = -1, }; static void __init tegra_machine_init(void) { .... (void) platform_device_register(&fsg_platform_device); .... }

Eclipse导出jar文件的两种方式

具体做法如下: 方法一:(工程没有引用外部jar包时,直接导出) 选中工程---->右键,Export...--->Java--->JAR file--->next-->选择jar file的路径及名称-->next-->next---> 选择main class--->finish. 方法2: 当工程引用了其他的外部jar时,由于eclipse不支持同时导出外部jar包的功能,所以比较麻 烦一点;具体步骤如下: 生成manifest file:选中工程--->右键,Export--->Java--->JAR file--->选择jar file的路 径及名称--->next--->next--->next; 此时来到了方法1中要选择main class的窗口,但这里先不选择main class,选择最上方的Generate the manifest file, 勾上Save the manifest in the workspace,在Manifest file:中输入file的名称,如/testProject/main,(其中testProject为工程名,main为man ifest file的名称)点击finish,回到工程,打开刚刚生成的main,在这里要输入如下信息: Manifest-Version: 1.0 Main-Class: com.pacong.convert.auto.propertes.ConvertAutoProperties Class-Path: jxl.jar 其中,Manifest-Version: 1.0为刚刚自动生成的manifest版本号; Main-Class: com.pacong.convert.auto.propertes.ConvertAutoProperties为main cl ass所在类; Class-Path: jxl.jar为外部jar包名称,这里是告诉导出的jar包,所要用到的外部的jar包 的路径及名称。 上面都做完了就可以导出带外部jar包的jar包了,步骤如下: 选中工程--->右键,Export--->Java--->JAR file--->选择jar file的路径及名称--->next --->next--->next,这时又来到了选择main class的窗口,但这里也不选择main class,选择Use existing manifest from workspace,在Manifest file:里选择刚刚生成的main,如:/testProject/main,点击finish,到此就大功告成啦;假设生成的jar包的名称为test.j ar,那么Class-Path中引入的jxl.jar要和test.jar位于同一个目录下。 这里还有一点要注意: 如果想在命令行中运行刚刚生成的jar,命令如下: java-jar test.jar 如果在jar中有一些System.out.prinln语句,运行后想看看打印出的内容,可以用一下命令: java -jar test.jar >log.txt 输出信息会被打印到log.txt中,当然log.txt自动生成,并位于和test.jar一个目录中。 这里也可以新建一个start.bat文件,创建后;右键---编辑,输入:java -jar test.jar >log. txt;以后直接双击start.bat即可运行test.jar啦。 此部分来自CSDN博客,转载请标明出处:https://www.360docs.net/doc/d116857430.html,/kanfeikanfei/archive/2009/03/25/402 4304.aspx

Android 串口编程原理和实现方式附源码

提到串口编程,就不得不提到JNI,不得不提到JavaAPI中的文件描述符类:。下面我分别对JNI、以及串口的一些知识点和实现的源码进行分析说明。这里主要是参考了开源项目android-serialport-api。 串口编程需要了解的基本知识点:对于串口编程,我们只需对串口进行一系列的设置,然后打开串口,这些操作我们可以参考串口调试助手的源码进行学习。在Java中如果要实现串口的读写功能只需操作文件设备类:即可,其他的事都由驱动来完成不用多管!当然,你想了解,那就得看驱动代码了。这里并不打算对驱动进行说明,只初略阐述应用层的实现方式。 (一)JNI: 关于JNI的文章网上有很多,不再多做解释,想详细了解的朋友可以查看云中漫步的技术文章,写得很好,分析也很全面,那么在这篇拙文中我强调3点: 1、如何将编译好的SO文件打包到APK中?(方法很简单,直接在工程目录下新建文件夹libs/armeabi,将SO文件Copy到此目录即可) 2、命名要注意的地方?(在编译好的SO文件中,将文件重命名为:lib即可。其中是编译好后生成的文件) 3、MakeFile文件的编写(不用多说,可以直接参考package/apps目录下用到JNI的相关项目写法) 这是关键的代码: [cpp]view plaincopy

(二):

文件描述符类的实例用作与基础机器有关的某种结构的不透明句柄,该结构表示开放文件、开放套接字或者字节的另一个源或接收者。文件描述符的主要实际用途是创建一个包含该结构的或。这是API的描述,不太好理解,其实可简单的理解为:就是对一个文件进行读写。 (三)实现串口通信细节 1) 建工程:SerialDemo包名:org.winplus.serial,并在工程目录下新建jni和libs两个文件夹和一个org.winplus.serial.utils,如下图: 2) 新建一个类:SerialPortFinder,添加如下代码: [java]view plaincopy 1.package org.winplus.serial.utils; 2. 3.import java.io.File; 4.import java.io.; 5.import java.io.IOException; 6.import java.io.LineNumberReader; 7.import java.util.Iterator; 8.import java.util.Vector; 9. 10.import android.util.Log; 11. 12.public class SerialPortFinder { 13. 14.private static final String TAG = "SerialPort"; 15.

App工程结构搭建:几种常见Android代码架构分析

App工程结构搭建:几种常见Android代码架构分析 关于Android架构,因为手机的限制,目前我觉得也确实没什么大谈特谈的,但是从开发的角度,看到整齐的代码,优美的分层总是一种舒服的享受的。 从艺术的角度看,其实我们是在追求一种美。 本文先分析几个当今比较流行的android软件包,最后我们汲取其中觉得优秀的部分,搭建我们自己的通用android工程模板。 1. 微盘 微盘的架构比较简单,我把最基本,最主干的画了出来: 第一层:com.sina.VDisk:com.sina(公司域名)+app(应用程序名称) 。 第二层:各模块名称(主模块VDiskClient和实体模块entities)第三层:各模块下具体子包,实现类。 从图中我们能得出上述分析中一个最简单最经典的结构,一般在应用程序包下放一些全局的包或者类,如果有多个大的模块,可以分成多个包,其中包括一个主模块。 在主模块中定义基类,比如BaseActivity等,如果主模块下还有子模块,可以在主模块下建立子模块相应的包。说明一点,有的时候如果只有一个主模块,我们完全可以省略掉模

块这一层,就是BaseActivity.java及其子模块直接提至第二层。 在实体模块中,本应该定义且只定义相应的实体类,供全局调用(然而实际情况可能不是这样,后面会说到)。在微盘应用中,几乎所有的实体类是以xxx+info命名的,这种命名也是我赞成的一种命名,从语义上我觉得xxxModel.java这种命名更生动更真实,xxxModel给我一种太机械太死板的感觉,这点完全是个人观点,具体操作中以个人习惯为主。还有一点,在具体的xxxInfo,java中有很多实体类中是没有get/set的方法,而是直接使用public的字段名。这一点,我是推荐这种方式的,特别是在移动开发中,get/set方法很多时候是完全没有必要的,而且是有性能消耗的。当然如果需要对字段设置一定的控制,get/set方法也是可以酌情使用的。 2. 久忆日记 相比于微盘的工程结构,久忆日记的结构稍微复杂了一些。如下图: 1).第一层和前面微盘一样的. 2).第二层则没有模块分类,直接把需要的具体实现类都放在下面,主要日记的一些日记相关的Activity。 3).第二层的实体包命令为model包,里面不仅存放了实体类

Eclipse中将项目导出jar包,以及转化成exe的方法

Eclipse中将项目导出jar包,以及转化成exe文件 2011-06-27 09:24 一、导出jar文件: 如果你的程序开发已经接近尾声了,正准备将其生成桌面可执行文件却不知道该如何操作时,你只要按照 以下步骤实行即可:选中你的项目---然后右击弹出选项列表---选择Export---Java---jar file---next---browser(选择jar的存放路径)---next---next(不管太多继续下一步)---browser(选择你 程序的主类--OK)---finish;查看你存放jar的目录,是否已经生成了?如果没有你一定没按照步骤操作. 二、运行jar文件: 生成的jar文件你可以双击运行它,但默认情况下会以压缩包的方式打开,如果这不是你想要的结果,请右 击文件---打开方式---选择java(TM)platform来运行.我想这时你应该看到了你的软件界面.先恭喜你了.. 三、连同第三方文件一并导出至jar文件: 如果你在程序开发的时候用到了第三方提供的API或者其它附属资源,在你导出生成jar文件时你必须将 第三方的文件一并导出,不然你的程序运行将达不到你想要的结果. 你可以利用Fat jar插件生成jar,Fat jar 的下载地址:https://www.360docs.net/doc/d116857430.html,/projects/fjep/下载的文件是net.sf.fjep.fatjar_0.0.31.zip,解压缩后你会看到plugins文件夹中的 net.sf.fjep.fatjar_0.0.31.jar文件(简称Fat jar). 插件安装:把Fat jar文件拷贝到你的eclipse目录下的plugins中..重新启动你的eclipse平台,然后 查看Window---preferences,弹出的窗口中有Fat jar preferences这一项则说明你已经安装成功了,没有这一项则未安装成功,需要多做如下几步操作:到你的eclipse目录下的 configuration---org.eclipse.update,并删除platform.xml文件,然后重新启动eclipse.查看 Window---preferences,你会发现Fat jar preferences这一项.恭喜你安装成功了.(未成功可直接去墙撞死).. 用Fat jar打包:右击你的项目,选项列表中有Build Fat jar这一项,选择它,弹出的窗口你会觉得特别 亲切,一目了然使用很方便,点击Browser(Main-Class选择你的主类)---next---finish(勾选你需要一起 打包的资源,默认为全部勾选).瞧,jar文件就生成在你的工程项目中了.运行它,一切顺利,否则就是你编程的问题了.. 另:如果你不想用Fat jar来打包,有一个更快捷的方法可以帮助你,但也是有缺陷的. 步骤:将你需要用到的附属文件放到你的jre安装目录下的\lib\ext目录中(安装JDK的同时也安装了jre),再通过(一、导出jar文件)的方式生成jar.这样就可以了.它有个致命的缺点就是,这样的jar文件只能在你本机可以使用,如果要在别的机子上运行必需在\lib\ext放置同样的附属资源. 四、将jar文件转换成exe可执行文件:

最全的Android源码目录结构详解

最全的Android源码目录结构详解 Android 2.1 |-- Makefile |-- bionic (bionic C库) |-- bootable (启动引导相关代码) |-- build (存放系统编译规则及generic等基础开发包配置) |-- cts (Android兼容性测试套件标准) |-- dalvik (dalvik JAVA虚拟机) |-- development (应用程序开发相关) |-- external (android使用的一些开源的模组) |-- frameworks (核心框架——java及C++语言) |-- hardware (部分厂家开源的硬解适配层HAL代码) |-- out (编译完成后的代码输出与此目录) |-- packages (应用程序包) |-- prebuilt (x86和arm架构下预编译的一些资源) |-- sdk (sdk及模拟器) |-- system (底层文件系统库、应用及组件——C语言) `-- vendor (厂商定制代码) bionic 目录 |-- libc (C库) | |-- arch-arm (ARM架构,包含系统调用汇编实现) | |-- arch-x86 (x86架构,包含系统调用汇编实现) | |-- bionic (由C实现的功能,架构无关) | |-- docs (文档) | |-- include (头文件) | |-- inet (?inet相关,具体作用不明) | |-- kernel (Linux内核中的一些头文件) | |-- netbsd (?nesbsd系统相关,具体作用不明) | |-- private (?一些私有的头文件) | |-- stdio (stdio实现) | |-- stdlib (stdlib实现) | |-- string (string函数实现) | |-- tools (几个工具) | |-- tzcode (时区相关代码) | |-- unistd (unistd实现) | `-- zoneinfo (时区信息) |-- libdl (libdl实现,dl是动态链接,提供访问动态链接库的功能)|-- libm (libm数学库的实现,) | |-- alpha (apaha架构) | |-- amd64 (amd64架构) | |-- arm (arm架构) | |-- bsdsrc (?bsd的源码)

android源码分析精典

Android 2.1 源码结构分析 lee Android 2.1 |-- Makefile |-- bionic (bionic C库) |-- bootable (启动引导相关代码) |-- build (存放系统编译规则及generic等基础开发包配置)|-- cts (Android兼容性测试套件标准) |-- dalvik (dalvik JAVA虚拟机) |-- development (应用程序开发相关) |-- external (android使用的一些开源的模组) |-- frameworks (核心框架——java及C++语言) |-- hardware (主要保护硬解适配层HAL代码) |-- out (编译完成后的代码输出与此目录) |-- packages (应用程序包) |-- prebuilt (x86和arm架构下预编译的一些资源) |-- sdk (sdk及模拟器) |-- system (文件系统库、应用及组件——C语言) `-- vendor (厂商定制代码) bionic 目录 |-- libc (C库) | |-- arch-arm (ARM架构,包含系统调用汇编实现) | |-- arch-x86 (x86架构,包含系统调用汇编实现) | |-- bionic (由C实现的功能,架构无关) | |-- docs (文档) | |-- include (头文件) | |-- inet (?inet相关,具体作用不明) | |-- kernel (Linux内核中的一些头文件) | |-- netbsd (?nesbsd系统相关,具体作用不明) | |-- private (?一些私有的头文件) | |-- stdio (stdio实现) | |-- stdlib (stdlib实现) | |-- string (string函数实现) | |-- tools (几个工具) | |-- tzcode (时区相关代码) | |-- unistd (unistd实现) | `-- zoneinfo (时区信息) |-- libdl (libdl实现,dl是动态链接,提供访问动态链接库的功能) |-- libm (libm数学库的实现,) | |-- alpha (apaha架构) | |-- amd64 (amd64架构) | |-- arm (arm架构)

eclipse导出jar包

软件配置 打包文件源码 一、eclipse导出jar包 二、cmd命令执行Jar包 软件配置 操作系统: win10 企业版 软件配置: JDK:1.8.0_241; eclipse:Oxygen.3a Release (4.7.3a);打包文件源码 Java工程名称:serialNum,其中有个java文件SetserialNum.java SetserialNum.java内容如下: package serialNum; import java.text.SimpleDateFormat; import java.util.Date; public class SetserialNum { public String setNum(String theLetter) { //传入A,现在时间为2020年03月30日12点45分18秒,最终生成A20200330124518 String serialNum=""; Date dNow = new Date( ); SimpleDateFormat ft = new SimpleDateFormat("YYYYMMddHHmmss"); serialNum=theLetter+ft.format(dNow); return serialNum; } public static void main(String str[]) { SetserialNum serial = new SetserialNum(); String dstr=serial.setNum("A"); System.out.println(dstr);

Android Galler2源码分析

图库Gallery2 Gallery2主要功能是实现本地存储器、MTP存储器和网络存储器中媒体(图像和视频)的浏览、显示和更多操作(删除、分享、选择和缩放等)。下面用一张简单的用例图描述了Gallery2的功能和职责。 Gallery 主要是4个页面的跳转: AlbumSetPage.Java(相册缩略图); AlbumPage.java(单个相册照片缩略图); PhotoPage.java(单张照片); SlideShowPage.java(幻灯片界面); 跳转过程: AlbumSetPage.Java→AlbumPage.java→PhotoPage.java SlideShowPage.java是单独的。 这些界面类父类为ActivityState.java;这些界面的切换由StateManager.java负责。 1 界面跳转过程: 在Galley2模块,我们先从程序的入口看起,在androidManifest.xml中注册Application标签(Android 系统会为每个程序运行时创建一个Application的类对象且仅创建一个,他的生命周期等于这个程序的生命周期,它是全局的单实例的,一般做一些全局的初始化操作),应用创建时就会被初始化,维护应用内部全局数据,主要看几个函数:initializeAsyncTask(), GalleryUtils.initialize(this),GalleryUtil是Gallery的工具类,获得了屏幕参数,WindowManager,Resource等

Gallery 从launcher进入Gallery,进入GalleryActivity.ava @Override protected void onCreate(Bundle savedInstanceState) { …... setContentView(https://www.360docs.net/doc/d116857430.html,yout.main); if (savedInstanceState != null) { getStateManager().restoreFromState(savedInstanceState); } else { initializeByIntent(); } } private void initializeByIntent() { Intent intent = getIntent(); String action = intent.getAction(); if (Intent.ACTION_GET_CONTENT.equalsIgnoreCase(action)){ startGetContent(intent); } else if(Intent.ACTION_PICK.equalsIgnoreCase(action)) { // We do NOT really support the PICKintent. Handle it as // the GET_CONTENT. However, we needto translate the type // in the intent here. Log.w(TAG, "action PICK is notsupported"); String type =Utils.ensureNotNull(intent.getType()); if(type.startsWith("vnd.android.cursor.dir/")) { if(type.endsWith("/image")) intent.setType("image/*"); if(type.endsWith("/video")) intent.setType("video/*"); } startGetContent(intent);

在Eclipse中把java程序打包成Jar包

在Eclipse中把java程序打包成Jar 方法一: 如果自己的java project中引用了额外的jar包作为资源文件,那么需要自己去定义配置文件MANIFEST.MF,内容示例如下: Manifest-Version:1.0 Main-Class: gobang.GobangGame Class-Path:lib\junit.jar lib\log4j-1.2.12.jar lib\mysql-connector-java-3.1.12-bin.jar 注:Class-Path中的各个jar文件名称见是否应该有间隔符,这个本人没有验证,因为本人没有用到其他的jar 其中的Class-Path就指定了外来的jar包的位置。请注意假设我们的项目打包好之后为project.jar,那么按照上面Class-Path的定义,就应该在project.jar的“同层”目录下建立一个lib文件夹,并将相关的jar包放在里面。否则会出现Exception in thread “main”https://www.360docs.net/doc/d116857430.html,ng.NoClassDefFoundError的错误。 下面介绍使用Eclipse制作jar包的过程: 1.首先在Eclipse中打开项目,右键点击项目,选择“Export”; 2.选择Java/JAR file,Next;

3.select the resources to export 中可以选择你想要包含的项目文件夹,一些不必要的文件夹就无需放进去了,免得增大空间。 在可勾选的文件夹下面有四个选项: (1).表示只导出生成的.class文件和其他资源文件 (2).表示导出选中项目的所有文件夹 (3).表示导出的jar包中包含你的源代码,如果不想泄露代码,那么就不要选这项 (4).把一些重构的信息文件也包含进去(注:这项不是很清楚!!!)

在eclipse中使用jar包

使用第三方jar包 除了我以下介绍的方法,别的方法我基本上都试验过,均会出现编译或运行错误。以下方法经测试编译和运行都完全没问题。 步骤: 方法1:Eclipse下, 右键工程, Build path, java build path,选择libraries 在右边的按钮中点击“Add Library” 选择“User library”,点击“下一步” 点击“User librarys”按钮 在出现的界面中点击“New..”按钮 在弹出的界面中随便起一个名字,点击“确定” 点击“Add jars”按钮选择第三方jar包,点击“确定”完成。 后面的步骤很重要,如果不进行后面的操作。在Eclipse里显示编译通过,不会有错误,但在模拟器或真机上运行的时候可能就会出现https://www.360docs.net/doc/d116857430.html,ng.noclassdeffounderror之类的错误: 1、在Android项目根目录下新建一个libs文件夹; 2、把你需要的导入的第三方Jar包复制进这个目录; 3、在libs目录上点右键,选Bulid path –> Use as source folder。

方法2,android源码环境下, 1,将out/target/common/obj/JAVA_LIBRARIES/powersave_intermediates 下的classess.jar文件放在自己的工程目录下。 out/target/product/ventana/system/framework目录下的jar包用以下方法经验证是不好使的,因为他已经打成dex文件了,在工程里引用其包是不行的; 2,修改android.mk文件,如下: LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE_TAGS := optional LOCAL_SRC_FILES := $(call all-java-files-under, src) LOCAL_STATIC_JAVA_LIBRARIES := libpowerjar libpowersave LOCAL_PACKAGE_NAME := testPowerjar LOCAL_CERTIFICATE := platform include $(BUILD_PACKAGE) ############################################## include $(CLEAR_VARS) LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libpowerjar:classes.jar libpowersave:testlily.jar

相关文档
最新文档