LumaQQ 是使用 Java 写的程序,原本的目的是为了能让 Linux 平台下的用户也可以使用 QQ 的功能。目前,LumaQQ 可以使用 QQ 的大部分的基本功能,而且是使用 Java 写的,所以不但能在 Linux 下使用还能在 Windows 平台下使用。另一方面,目前暂时也没有针对他的盗号程序。所以,LumaQQ 也可以做为一个便携的 QQ 放在 U 盘之类的设备里面随身携带,随处使用。

正常情况下,LumaQQ 加上 Java 的运行库总共有大约 90MB。将 Java 的运行库根据 LumaQQ 的实际情况精简后,它的大小可以减小到在大约 20MB。加上 LumaQQ 的主体文件总共才 30MB 左右。这比官方的发布的 QQ 程序(大约 80MB)小得多了。

经过初步分析,只要有文件的 Java 库,LumaQQ 可以正常运行(可能还可以更精简)。

Java 文件夹下有以下文件:

├─lib
│  │  javaws.jar
│  │  jce.jar
│  │  jsse.jar
│  │  charsets.jar
│  │  rt.jar
│  │
│  └─i386
│          jvm.cfg

└─bin
    │  dcpr.dll
    │  deploy.dll
    │  dt_shmem.dll
    │  dt_socket.dll
    │  eula.dll
    │  fontmanager.dll
    │  hpi.dll
    │  hprof.dll
    │  instrument.dll
    │  ioser12.dll
    │  j2pkcs11.dll
    │  jaas_nt.dll
    │  java.dll
    │  javaw.exe
    │  jawt.dll
    │  jpeg.dll
    │  jpinscp.dll
    │  jpioji.dll
    │  jsound.dll
    │  jsoundds.dll
    │  management.dll
    │  net.dll
    │  nio.dll
    │  unpack.dll
    │  verify.dll
    │  w2k_lsa_auth.dll
    │  zip.dll
    │  JdbcOdbc.dll
    │  jdwp.dll
    │  jpicom32.dll
    │  jpiexp32.dll
    │  jpishare.dll
    │  RegUtils.dll
    │  rmi.dll
    │  awt.dll
    │  axbridge.dll
    │  cmm.dll
    │  java_crw_demo.dll
    │  JavaWebStart.dll
    │
    └─client
            Xusage.txt
            jvm.dll

另外, rt.jar 也是特别精简过的。可以使用 WinRAR 打开它,然后直接把除了以下的目录都删除就行:

RT.JAR
│ 
├─META-INF
│  └─services
├─java
│  ├─beans
│  │  └─beancontext
│  ├─io
│  ├─lang
│  │  ├─annotation
│  │  ├─instrument
│  │  ├─management
│  │  ├─ref
│  │  └─reflect
│  ├─math
│  ├─net
│  ├─nio
│  │  ├─channels
│  │  │  └─spi
│  │  └─charset
│  │      └─spi
│  ├─security
│  │  ├─acl
│  │  ├─cert
│  │  ├─interfaces
│  │  └─spec
│  ├─text
│  └─util
│      ├─concurrent
│      │  ├─atomic
│      │  └─locks
│      ├─jar
│      ├─logging
│      ├─prefs
│      ├─regex
│      └─zip
├─javax
│  ├─accessibility
│  ├─activity
│  ├─imageio
│  │  ├─event
│  │  ├─metadata
│  │  ├─plugins
│  │  │  ├─bmp
│  │  │  └─jpeg
│  │  ├─stream
│  │  └─spi
│  ├─management
│  │  ├─loading
│  │  ├─modelmbean
│  │  ├─monitor
│  │  ├─openmbean
│  │  ├─relation
│  │  ├─remote
│  │  │  └─rmi
│  │  └─timer
│  ├─rmi
│  │  ├─CORBA
│  │  └─ssl
│  ├─security
│  │  ├─auth
│  │  │  ├─callback
│  │  │  ├─kerberos
│  │  │  ├─login
│  │  │  ├─spi
│  │  │  └─x500
│  │  └─sasl
│  ├─sound
│  │  ├─midi
│  │  │  └─spi
│  │  └─sampled
│  │      └─spi
│  ├─transaction
│  │  └─xa
│  └─xml
│      ├─datatype
│      ├─namespace
│      ├─parsers
│      ├─transform
│      │  ├─dom
│      │  ├─sax
│      │  └─stream
│      ├─validation
│      └─xpath
├─org
│  ├─ietf
│  │  └─jgss
│  ├─omg
│  │  ├─CORBA
│  │  │  ├─DynAnyPackage
│  │  │  ├─ORBPackage
│  │  │  ├─TypeCodePackage
│  │  │  └─portable
│  │  ├─CORBA_2_3
│  │  │  └─portable
│  │  ├─CosNaming
│  │  │  ├─NamingContextEx
│  │  │  └─NamingContextPa
│  │  ├─Dynamic
│  │  ├─DynamicAny
│  │  │  ├─DynAnyFactoryPa
│  │  │  └─DynAnyPackage
│  │  ├─IOP
│  │  │  ├─CodecFactoryPac
│  │  │  └─CodecPackage
│  │  ├─Messaging
│  │  ├─PortableInterceptor
│  │  │  └─ORBInitInfoPack
│  │  ├─PortableServer
│  │  │  ├─CurrentPackage
│  │  │  ├─POAManagerPacka
│  │  │  ├─POAPackage
│  │  │  ├─ServantLocatorP
│  │  │  └─portable
│  │  ├─SendingContext
│  │  └─stub
│  │      ├─java
│  │      │  └─rmi
│  │      └─javax
│  │          └─management
│  │              └─remote
│  │                  └─rmi
│  ├─w3c
│  │  └─dom
│  │      ├─bootstrap
│  │      ├─css
│  │      ├─events
│  │      ├─html
│  │      ├─ls
│  │      ├─ranges
│  │      ├─stylesheets
│  │      ├─traversal
│  │      └─views
│  └─xml
│      └─sax
│          ├─ext
│          └─helpers
└─sun
    ├─beans
    │  ├─editors
    │  └─infos
    ├─io
    ├─misc
    │  └─resources
    ├─net
    │  ├─dns
    │  ├─ftp
    │  ├─smtp
    │  ├─spi
    │  │  └─nameservice
    │  ├─www
    │  │  ├─content
    │  │  │  ├─audio
    │  │  │  ├─image
    │  │  │  └─text
    │  │  ├─http
    │  │  └─protocol
    │  │      ├─doc
    │  │      ├─ftp
    │  │      ├─gopher
    │  │      ├─http
    │  │      ├─jar
    │  │      ├─mailto
    │  │      ├─netdoc
    │  │      ├─systemresou
    │  │      ├─verbatim
    │  │      └─file
    │  └─util
    ├─nio
    │  ├─ch
    │  └─cs
    ├─reflect
    │  ├─annotation
    │  ├─generics
    │  │  ├─factory
    │  │  ├─parser
    │  │  ├─reflectiveObjec
    │  │  ├─repository
    │  │  ├─scope
    │  │  ├─tree
    │  │  └─visitor
    │  └─misc
    ├─security
    │  ├─acl
    │  ├─action
    │  ├─jca
    │  ├─jgss
    │  │  ├─krb5
    │  │  └─spi
    │  ├─krb5
    │  │  └─internal
    │  │      ├─ccache
    │  │      ├─crypto
    │  │      │  └─dk
    │  │      ├─ktab
    │  │      ├─rcache
    │  │      ├─tools
    │  │      └─util
    │  ├─pkcs
    │  ├─provider
    │  │  └─certpath
    │  ├─rsa
    │  ├─timestamp
    │  ├─tools
    │  ├─util
    │  ├─validator
    │  └─x509
    ├─text
    │  └─resources
    └─util
        ├─calendar
        └─logging
            └─resources

其实里面还有很多 .class 也是可以删除掉的,由于时间关系就没有一个个的尝试。

精简 java 库 for LumaQQ相关推荐

  1. 2016年度最受欢迎的100个 Java 库

    [编者按]本文作者为 Henn Idan,主要介绍基于 GitHub 中的数据分析,得出的2016年度最受欢迎的100个 Java 库.本文系国内 ITOM 管理平台 OneAPM 编译呈现. 谁拔得 ...

  2. 盘点 100 个最受欢迎的 Java 库!绝对经典

    我们分析了 GitHub 中 47,251 条依赖关系,得出最受欢迎的100个 Java 库. 漫长的周末里,我们最喜欢的消遣方式是遍历 GitHub,找出最受欢迎的 Java 库.我们决定,将其中的 ...

  3. Java黑皮书课后题第10章:**10.23(实现String类)在Java库中提供了String类,给出你自己对下面方法的实现(将新类命名为MyString2)

    **10.23(实现String类)在Java库中提供了String类,给出你自己对下面方法的实现(将新类命名为MyString2) 题目 简短的吐槽 代码:这里将类名改用Test23_MyStrin ...

  4. 2018年不能错过的 14 个 Java 库

    转载自 2018年不能错过的 14 个 Java 库 下面是整理给你的 2018 年不应该错过的 14 个 Java 库包清单,多多少少大家应该都接触过一些,如果还没听过那就OUT了. Guice G ...

  5. 在分析了47,251个依赖关系之后,2016年排名前100的Java库

    谁在上面,谁在后面? 我们分析了Github上的47,251个依赖关系,并抽取了前100个Java库 长周末我们最喜欢的消遣是浏览Github并搜索流行的Java库. 我们决定与您分享乐趣和信息. 我 ...

  6. eclipse 中文_谁说API必须用英文?中文API的Java库可以有!

    是不是看惯了文档里的英文接口(API),也在 IDE 里看惯了自动补全里的英文接口? 现今的绝大多数 API 的确是英文命名没错,但绝非不能或者不应该实现和发布中文 API 的库. 这里用一个简单的汉 ...

  7. 10大最高效的Java库盘点

    1. Java 标准库 不用怀疑,我说的就是Java标准库,很多人都低估了或者没有完全了解Java标准库,并且不知道如何在编程的时候使用它,有些人甚至都不用它,下面说一些Java标准库的简要说明 ●  ...

  8. 好用java库(二) : lambdaj (集合操作)

    接着介绍另外一个好用的java库. 记得之前做过一个web services,业务逻辑是很简单,可是代码写得多又长,因为基本上都是在对ArrayList结果进行各种筛选,排序,聚合等操作.大家都有这样 ...

  9. scala调用java库_从scala调用java时的java.lang.IllegalAccessError – solutions / workarounds?...

    我正在使用 java线性代数库(ojalgo 32.0)进行scala项目,我遇到了一个 奇怪的问题.我使用的每种ojalgo方法都很好(例如矩阵 和逐元素乘法,逆矩阵和随机矩阵 除了用于获得矩阵尺寸 ...

最新文章

  1. bochs调试linux内核学习4 - bochs配置文件的$BXSHARE变量、bochs的System BIOS must end at 0xfffff错误、运行内核0.00版本
  2. 。net面试题(2)
  3. 根据SAP表名或视图查询后台配置路径
  4. android finish 区别,Android Activity类finish、onDestory和System.exit介绍
  5. Windows Phone开发(16):样式和控件模板 转:http://blog.csdn.net/tcjiaan/article/details/7367260...
  6. mysql 长连接 has gone away_MySQL server has gone away报错原因分析/
  7. 蓝桥杯 ADV-223 算法提高 8-1因式分解
  8. jbpm视频教程全集下载【21讲完整】
  9. 1078 最小生成树
  10. 如何安装uclient_UClient官方版下载_UClient手机官方版下载v2.0.0.1580_3DM单机
  11. Android音量控制器,音量控制器
  12. 计算机网络(四)—— 网络层(1、2):网络层概述、网络层提供的两种服务
  13. 为什么计算机里没有桌面显示不出来,电脑开机不显示桌面怎么办解决教程
  14. linux下使用命令行获取公网ip地址
  15. 世界观和方法论----写给学弟学妹的
  16. windows家庭版添加windows沙盒功能
  17. android 关于px转化为dp,sp
  18. html img 手势缩放,微信小程序中利用image组件实现图片手势缩放
  19. Java基础练习——吃货联盟
  20. CTP报单交易指令(一)限价单

热门文章

  1. 【Unity】Rigibody——刚体加力、刚体加扭矩力、刚体加力的几种模式
  2. pytorch中的激励函数(详细版)
  3. C51中各种存储区名词解释
  4. 高校计算机信息技术基础知识,大学信息技术(计算机基础)练习题(专科、本科).PDF...
  5. 积米浏览器下载|积米浏览器免费下载
  6. react 使用 Youtube 播放器
  7. 孙玄:斗胆谈一谈,大数据中台战略,究竟应该如何落地?
  8. jQuery Ajax 调用WebService实例详解
  9. 4am永远 鼠标按键设置_《搞机作战室》机械师M8鼠标怎么安装/使用控制中心
  10. mall4j的小程序商城(java)