|
J2ME首选项
为了查看或者调整EclipseME的首选项,你可以从Window
菜单打开Preferences 对话框。
本文档描述了接下来的一系列设置。
- 设备管理
- 基本首选项
- 新建Midlet套件首选项
- 无线下载首选项
- 打包首选项
- 混淆首选项
- 预校验首选项
设备管理
你可以从首选项面板左边目录选择
J2ME/Device Management来设定一些首选项,用来控制被
安装到EclipseME的设备定义。
关于设备定义的详情, 请参见
设备管理 一节所描述的信息。
基本首选项
从首选项面板左边目录选择
J2ME 栏目后,你就会看到一个基本首选项设置
页,如下图所示:
首选项项目:
| 项目 | 内容 |
| Deployment Directory |
Deployment Directory(部署目录)选项允许你设置一个相对于工程目录的子目录,
当你对工程执行打包操作时所生成的JAR以及JAD文件会被
到该目录中。另外,内置的 无线下载
部署功能也会从这个目录下去寻找JAD以及JAR文件。
|
| Verified Output Directory Name |
J2ME规范规定所有的类在运行前都必须经过预校验。
这个规定带来了较高的安全机制而又不像J2SE那样需要很大的开销。
如果Eclipse工作环境运行自动编译,那么EclipseME可以对类文件自动进行预校验。
当Eclipse对一个类完成编译以后,EclipseME将会对其进行预校验并且把它放到该选项设置的目录中去。
|
|
Antenna JAR
|
如果你想使用EclipseME自带的生成Antenna构建文件的功能的话,那么
你必须告诉EclipseME你把Antenna的JAR文件放到哪儿了。详情可以参见
Antenna支持一节。
|
|
WTK ROOT
|
如果你想使用EclipseME自带的生成Antenna构建文件的功能的话,那么
你需要让EclipseME知道WTK的安装目录在什么地方。详情可以参见
Antenna支持一节。
|
| Debug Server Delay |
有些模拟器,比如说NOKIA的,调试的时候是以服务端而不是客户端的形式出现,
所以这类模拟器必须在EclipseME试图连接它之前启动。由于有很多因素会影响
启动的时间,为了让模拟器有足够的时间启动,所以在这里你可以设定在等待
多少时间(毫秒)以后,EclipseME才去连接模拟器的调制服务端。
|
新建Midlet套件首选项
从首选项面板左边目录选择
New Midlet Suite目录,你可以设定一些关于
新建一个Midlet套件的首选项。
| 条目 | 内容 |
| Force Java 1.1 Compliance |
如果该项被选中了, EclipseME创建工程文件的时候会自动调整工程属性的设定,
使编译器强制生成Java 1.1版本的类文件。
如果没有选中的话,那么就使用工作环境的设定。
警告: 因为很多手持设备都不支持1.1以后版本的类文件格式,
所以我们强烈推荐你选中这个选项。
|
| Automatically Use Resources Directory in New Projects |
如果该选项被选中,那么当你创建MIDlet工程的时候,同时会自动创建一个资源文件目录,
该目录的文件名由下面那个文本输入框的内容决定。
|
| Resources Directory |
如果上面那个选项被选中的话,那么你可以在这里设置一个资源文件夹的名字。注意这个特性
只有在新建工程时管用,并且你要设置了让工程的源文件和二进制文件使用不同的目录。
|
无线下载首选项
从首选项面板左边目录选择
J2ME/Over the Air 后,你可以设定EclipseME的无线下载首选项。
首选项项目:
| 项目 | 内容 |
| Start Listening at Startup |
如果该选项被选中,那么当Eclipse环境打开的时候会启动一个内置的
无线下载服务器。要是在Eclipse环境以外使用OTA(无线下载)服务器
的话,请确保该服务器已经被启动了并且端口指定正确。如果可以在Eclipse
里启动模拟器,那么你没有必要去启动服务程序了,因为必要的时候它会自动
启动的。
|
| Use Specified Port |
选中该选项并且填入一个端口可以为内置的HTTP服务程序指定一个端口号。
如果该选项没有被选中的话,那么OTA服务程序会被随机的指定一个端口。
|
| 指定端口 |
当 Use Specified Port 选项被选中,
为内嵌的HTTP服务程序指定一个端口。
|
| Automatically deploy prior to launch |
为了执行无线下载运行操作,JAR和JAD必须预先部署完毕。选中该选项后,如果自从
上次打包后程序又有了变动,EclipseME会自动在执行无线下载操作之前打包你
的MIDlet套件。
|
打包首选项
打包首选项可以对将要发布的文件进行打包的过程进行控制。
| 项目
|
内容
|
| Increment Version Automatically |
如果该选项被选中,每次MIDlet套件重新打包后,EcilpseME会自动的增加Midlet Version 参数的值。
注意:从EclipseME 1.2.0开始,如果一个版本号的形式为x.y.z,当y或者z
的数值增加到99了,就将该位回滚到0,并且将前一位加1。这么做是因为如果
JAD文件中的版本号含有三位数的部分会引起手机的错误。
|
| 排除属性 |
在这里,你可以设置一些MIDlet属性,使得打包的时候它们不会出现在
JAR文件中的manifest文件里。默认情况下, MIDlet-Jar-URL 和
MIDlet-Jar-Size
会被排除。
|
混淆首选项
混淆首选项控制对包进行混淆的过程。
EclipseME使用Proguard 来完成混淆过程。
首选项项目:
| 项目 | 内容 |
| Proguard Root Directory |
在这里你可以指定Proguard安装路径。
如果你要对你的程序混淆,必须安装Proguard。
|
| Use Specified Arguments |
默认情况下, EclipseME会使用如下参数来调用Proguard进行混淆:
-dontusemixedcaseclassnames -dontnote -defaultpackage ''
在某些场合你需要指定不同的参数时, 可以将"Use specified arguments"(使用指定参数)
这个选项选中并且在文本框里填上参数。
Microsoft Windows 用户特别注意:
默认情况下, ProGuard假定你使用的操作系统会区分文件名中的大小写。
(比如 A.java 和 a.java
是两个不同的文件)很明显,Microsoft Windows不是这样的操作系统。
Windows用户要确定为ProGuard指定了-
dontusemixedcaseclassnames
选项。 如果你没有这样做,而你的工程文件又超过了26个类的话, ProGuard默认
使用变换大小写的方式为混淆后的类命名。显然这会覆盖原来的类。
安全起见,从EclipseME 0.9.0发行版开始
-dontusemixedcaseclassnames 选项被包含到了传给
ProGuard的默认选项中去。 如果你是*NIX用户并且你的工程中的类超过26个的话,
去掉该选项你可以得到一个稍微小点的JAR文件。
|
| Proguard Keep Expressions |
在这里你可以设置一个表达式是的某些类不被混淆。表达式中用到的关键字
请参阅Proguard文档。
默认的表达式会保留所有的MIElet类以及他们的方法不被混淆。
|
预校验首选项
从首选项面板左边目录选择
J2ME/Preverification 目录
你可以对该插件的预校验操作进行设置。
这里主要有两个关键问题需要设置:
-
为CLDC 1.0 进行预审和还是 CLDC 1.1。
-
是使用外部WTK的预校验器还是使用内部的预校验器
| 项目 | 内容 |
|
Use JAD file settings
|
该选项被选中的话,EclipseME会根据JAD文件中的配置来自行决定是使用CLDC 1.0还是
CLDC 1.1的校验方式。
|
|
Use project platform definition configuration
|
如果这个选项被选中的话,EclipseME会根据工程平台定义的配置情况来决定是使用CLDC 1.0还是CLDC 1.1的形式。
|
|
Use specific configuration
|
这个选项允许你从下拉列表里面指定CLDC1.0或者1.1,而无论JAD中定义如何或者
使用什么样的工程平台定义。
|
|
Use Built-In Preverifier
|
自从EclipseME 1.2 版本开始, EclipseME包含了一个预校验器的本地JAVA实现。如果
你选中这个选项的话,那么EclipseME会用它来替代外部WTK的预校验器。
注意: 内部的预校验器还在还处在beta阶段,不保证一定好使哦。
不过内部预校验器遇到预校验错误时的反馈功能还是不错的。
EclipseME开发者会对该预校验器的反馈功能很满意的。
|
|