Java 模块化开发 Java 模块化开发是大型 Java 系统的一个重要特征。模块化是指将项目划分为多个模块,以便改进构建过程,但是在运行时却很少考虑划分模块的问题。在 Java 开发中,模块化可以分为静态模块化(static modularity)和动态模块化(dynamic modularity)。 一、静态模块化(static modularity) 静态模块化是指在编译时对模块的依赖关系进行检查和管理。Java 中的模块可以声明其依赖需求,这样,在运行时就可以在执行之前进行依赖检查。OSGi(Open Service Gateway Initiative)是 Java 的一个运行时动态模块系统,提供了静态模块化的解决方案。OSGi 规范描述了 OSGi 运行时的工作行为方式。 在 OSGi 中,一个模块(也称为 bundle)是一个普通的 JAR 文件,但在其 MANIFEST.MF 中带有附加信息。一个 bundle 的manifest 必须至少包含以下内容: * Bundle-ManifestVersion:对 OSGi R4 bundle 来说必须是 2(OSGi R3 bundle 则默认为 1) * Bundle-SymbolicName:bundle 的文本标识符,通常以反向域名的形式出现,如 com.infoq,并且往往对应了包含其中的 package * Bundle-Version:major.minor.micro.qualifier 形式的版本号,前三个元素是数字(缺省是0),qualifier 则是文本(缺省是空字符串) 二、创建一个 bundle 创建一个 bundle 需要在 manifest 文件中包含以下内容: * Bundle-ManifestVersion: 2 * Bundle-SymbolicName: com.infoq.minimal * Bundle-Version: 1.0.0 创建一个带 activator 的 bundle 需要在 manifest 中加入额外的信息项: * Bundle-Activator: com.infoq.ExampleActivator * Import-Package: org.osgi.framework Bundle-Activator 声明了在 bundle 启动时要实例化并调用其 start()方法的类;类似的,在 bundle 停止时将调用该类的stop()方法。 三、模块化的重要性 模块化是大型 Java 系统的一个重要特征,可以改进构建过程和运行时的性能。但是,模块化也带来了新的挑战,如依赖关系的管理和版本控制等。因此,了解模块化的概念和技术栈对 Java 开发者来说是非常重要的。 四、模块化技术栈 OSGi 是 Java 的一个运行时动态模块系统,提供了静态模块化和动态模块化的解决方案。OSGi 规范描述了 OSGi 运行时的工作行为方式。 在 Java 开发中,模块化技术栈包括: * OSGi * Maven * Java 9 的模块化系统 这些技术栈可以帮助开发者更好地管理模块化的依赖关系和版本控制,从而提高大型 Java 系统的性能和可靠性。 Java 模块化开发是大型 Java 系统的一个重要特征,可以改进构建过程和运行时的性能。但是,模块化也带来了新的挑战,如依赖关系的管理和版本控制等。因此,了解模块化的概念和技术栈对 Java 开发者来说是非常重要的。
剩余16页未读,继续阅读
- shendoulaixihuanwo2018-10-31视乎看不懂
- linshi05992013-08-17不好意思,看不懂。可能是因为不是我需要的东西吧
- 粉丝: 9
- 资源: 30
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 5G SRM815模组原理框图.jpg
- T型3电平逆变器,lcl滤波器滤波器参数计算,半导体损耗计算,逆变电感参数设计损耗计算 mathcad格式输出,方便修改 同时支持plecs损耗仿真,基于plecs的闭环仿真,电压外环,电流内环
- 毒舌(解锁版).apk
- 显示HEX、S19、Bin、VBF等其他汽车制造商特定的文件格式
- 操作系统实验 Ucore lab5
- 8bit逐次逼近型SAR ADC电路设计成品 入门时期的第三款sarADC,适合新手学习等 包括电路文件和详细设计文档 smic0.18工艺,单端结构,3.3V供电 整体采样率500k,可实现基
- 操作系统实验 ucorelab4内核线程管理
- 脉冲注入法,持续注入,启动低速运行过程中注入,电感法,ipd,力矩保持,无霍尔无感方案,媲美有霍尔效果 bldc控制器方案,无刷电机 提供源码,原理图
- Matlab Simulink#直驱永磁风电机组并网仿真模型 基于永磁直驱式风机并网仿真模型 采用背靠背双PWM变流器,先整流,再逆变 不仅实现电机侧的有功、无功功率的解耦控制和转速调节,而且能实
- 157389节奏盒子地狱模式第三阶段7.apk