打包
- 清单文件被命名为MANIFEST.MF,用于描述归档特征.
- 清单文件被分为多个节, 第一节被称为主节,作用于整个文件; 其他节则必须起始于Name的条目. 节之间空行分开.
- jar cfm JARFileName ManifestFileName . . . 添加清单文件
- jar cfm MyArchive.jar manifest.mf com/mycompany/mypkg/*.class 创建包含清单文件的jar文件
- jar ufm MyArchive.jar manifest-additions.mf 将manifest-additions.mf中的项添加到jar的清单文件中
- jar的命令e用来指定程序入口点 或者在清单中添加Main-Class:com.xlx.MainClass
- Sealed:true 可以将包密封, 保护包可见的类不被别有用心的程序利用.
应用首选项的存储
- 传统方式是放在properties文件中,但Java提供了首选项API提供了更健壮的解决方案
Properties
类和Preferences
可以存储首选项, Preferences在windows中放置在注册表中
服务加载器
- 服务加载器用来加载插件
ServiceLoader
, 服务类放置在META-INF/services 目录下的一个 UTF-8 编码文本文件中,文件名必须与接口完全限定类名一致, 且必须包含实现类的限定名 - 服务类必须要有个无参构造器
Java Web Start
主要特性
- 通过浏览器发布
- 不在浏览器窗口内, 有单独的框架
- 不适用浏览器的Java实现
- 有访问本机的任意权限
- JNLP 文件用来描述jar文件的信息