`
soleegn
  • 浏览: 148902 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
阅读更多
    感谢大家对上一篇文章的拍砖,引起的反响不小,目的达到了~,希望可以继续板儿砖横飞!
    今天来说说第三方JAR包的引入。RCP开发(或者plugin开发)中最让人头疼就是第三方JAR包的引入了,很多初学的朋友常常头疼,介绍的文章也不少了,如果搞不定,自己google一下就可以了。
    为什么第三方JAR包会引发如此众多的问题,其实并不是Eclipse的错,而是先入为主的错。如果你一开始就就接触Eclipse开发,以后再做不同java开发,你就会觉得java的类加载机制是变态了~Eclipse的类加载机制是基于OGSI的实现,它完成了插件的独立加载和独立维护,正是因为这种变态的类加载机制,才有了我们头大的第三方jar包的问题,也正是这种伟大的类加载机制,才有了即插即用的思路的诞生。
    大多数简单的RCP项目都是将所有的JAR包放入本地项目中,然后直接进引入项目路径,就开始整了,对于小的应用,或者开发人员少的情况下,这样是可行的,也是便捷的~但是RCP的目标是大型的企业级应用,一个系统由十几个,几十个插件组成,是很正常的。所以就要求我们将RCP中所有用到的第三方JAR包统一管理,统一维护,给开发人员少一些烦恼。
    思路有两种:
1.将JAR文件plugin样子包装,及新建Plug-in from existing jar archives 项目,然后选择JAR文件,再取消Unzip the jar archives into the project 选项,然后其它的插件依赖它就可以了。
2.新建一个不同插件项目,然后把第三方JAR包放入这个项目,然后引入到此项目中,在plugin.xml的runtime配置页的Exported Packages 选Add... 再选择要发布出去的包路径,然后其他的插件依赖它就可以了。
    官方推荐的方式是第一种,个人认为第一种确实很好,可以非常好而且方便的维护第三方JAR包。但是我还是选择了第二种方式,理由是,配置文件读取的问题。
    每一个插件文件都会维护一份属于自己的配置文件,只有这样才能做到自我独立。但是这两种方式都不能使其他插件项目的配置文件独立维护,原因就是Eclipse那讨厌又强大的类加载机制。
    使用第一种方式,配置文件必须放在你记载的进来的JAR包的里面,这样Eclipse类加载机才会加载并处理,除非选择了Unzip the jar archives into the project 选项,并把配置文件和一堆的class文件放在同一目录下类加载机才能发现。我想这种方式谁都不会喜欢,要么就是我们要创造自己的JAR包,要么工作台遍布了各种各样来自世界各地的class文件。
    使用第二种方式,是通过运行时将需要发布出来供别人依赖的package发布出来,而配置文件则需要放在此插件项目中。相对而言,这种比上一种有很大的好处,而且也不是那么难维护。

    以上只是自己项目中的一些总结,关于第三方JAR包的问题,我查了很多资料,好像逃不过这三种方式(直接在项目中依赖算一种),不知道各位大侠还有没有更好的办法,即能处理好第三方JAR包,又能保持各个插件维护自己独立的配置文件?
分享到:
评论

相关推荐

    Eclipse RCP应用系统开发方法与实战jar包

    6. **其他辅助库**:开发过程中可能会用到的其他第三方库,例如用于数据库连接的jar,或者用于XML解析的库,比如dom4j、jaxen等。 通过学习和实践这本书,开发者能够掌握以下关键知识点: 1. **RCP架构**:理解...

    RCP产品打包成exe文件

    这可以通过使用工具如JRE Bundler(Eclipse插件)或者第三方工具如Launch4j来实现。这些工具能够创建一个自包含的可执行文件,内部包含了运行RCP应用所需的JRE。 3. **打包工具**: 使用像Ant、Maven或者Gradle这样...

    activemq rcp测试例子 不包含依赖库

    1. 获取缺失的依赖库:首先,你需要找到并下载所有必要的依赖库,包括ActiveMQ的JAR文件、protobuf的相关库以及其他可能的第三方依赖。 2. 配置ActiveMQ:设置ActiveMQ服务器,确保它可以接收和处理RPC请求。这可能...

    RCP程序中集成其他插件的配置方法

    通过以上步骤,你可以成功地将第三方插件集成到RCP程序中。然而,实际操作过程中可能会遇到各种问题,如插件间的依赖冲突、性能优化等。因此,熟悉Eclipse插件开发的最佳实践,以及如何有效地管理和调试插件,是提升...

    RCP Plug-in开发自学教程(CEC首发)

    外部JAR的使用也是RCP开发中常见的需求,教程会介绍如何将第三方库集成到你的RCP项目中,以便调用其提供的功能。 最后,教程还将涵盖如何向RCP应用程序中添加标志( branding)和帮助(help)系统。品牌化包括设置...

    maven-tycho-thirdparty:在 Eclipse 插件中使用第三方依赖与 Maven 和 Tycho

    总结起来,`maven-tycho-thirdparty` 是一个关于如何在 Eclipse 插件项目中利用 Maven 和 Tycho 管理第三方依赖的实践示例。通过学习和理解这个项目,开发者可以更好地掌握构建 Eclipse 插件的技能,提高开发效率。...

    自己动手写开发工具--基于eclipse的工具开发

    在IT行业中,开发工具是程序员日常工作中的重要辅助,它们能够提高效率、简化...无论是创建新的视图、编辑器还是集成第三方工具,Eclipse的开放性都为你提供了无限可能。动手尝试,你将收获一个完全个性化的开发环境。

    eclipse-SDK-3.2.2-win32(1)

    在Eclipse 3.2.2中,PDE进一步增强了插件的开发和调试能力,使得第三方开发者可以轻松扩展Eclipse的功能。 3. **通用项目框架(EPF)**:EPF提供了过程建模和文档生成工具,帮助组织建立和维护软件开发的最佳实践和...

    Birt使用经验谈

    - **其他依赖库**: 文章还提到了两个重要的第三方库——iText1.3和prototype.js v1.4.0。这些库分别用于PDF文档生成和增强Web界面交互性。iText1.3应被放置于`E:\birt-runtime-2_0_1\Web Viewer Example\plugins\org...

Global site tag (gtag.js) - Google Analytics