我用 J2ME Polish 开发了一个 J2ME 应用程序。诺基亚现在验证将提交到商店的内容,挑战是在验证我的 JAR 和 JAD 文件期间,我得到 Error 217 - The JAR manifest does not end with a new line
我检查了我的 JAR 清单,发现它以新行结尾。有人有任何建议或解决方案吗?
我用 J2ME Polish 开发了一个 J2ME 应用程序。诺基亚现在验证将提交到商店的内容,挑战是在验证我的 JAR 和 JAD 文件期间,我得到 Error 217 - The JAR manifest does not end with a new line
我检查了我的 JAR 清单,发现它以新行结尾。有人有任何建议或解决方案吗?
仔细检查清单的最后一行是否没有不可见的字符,如空格或制表符。
如果清单确实有换行符,则错误消息显然意味着此诺基亚设备中的错误。
不过,您的清单可能有问题,诺基亚仅使用不正确的消息来指示其中存在其他问题。获取这样的消息,请确保您的清单符合 JAR 文件规范(在线提供)的各个部分,特别是:
首先我要检查的是清单行不超过"72 bytes (not characters), in its UTF8-encoded form"。
另一件值得尝试的事情是尝试各种指定的行尾样式:CR LF | LF | CR
. 在您的 IDE / build 中可能有一个设置来管理它,寻找类似“DOS / Unix / Mac 换行符”的东西。规范声明所有这些都可以,但您最好考虑设备中无法识别特定样式换行符的错误的可能性。
还可以考虑在诺基亚论坛上检查/询问这可能是特定设备的已知问题。
终于搞定了,我使用java sdk提供的jar工具从jar文件中提取midlet,如下:
jar xf myjarfile.jar META-INF/MANIFEST.MF
然后在文本编辑器中编辑文件并更新 jar 文件中的清单
jar umf META-INF/MANIFEST.MF myjarfile.jar
谢谢大家的建议。
可选地,您可以使用 winrar 软件打开您的 jar 文件,然后您可以从 META - INI 文件访问清单。从这里您可以使用文本编辑器对其进行编辑,之后您可以保存注意:保存后注意大小将会改变因此,请确保在编辑后检查 jar 的大小,通过右键单击然后查看属性。检查大小,然后通过在文本编辑器中打开 jad 文件将其相应地更改为 jad 文件
就是这样:-0