作者fallingrain8 (我的琴不够"趁")
看板java
标题[问题] 函式库与JRE执行版本不相同之问题
时间Sun Dec 27 14:59:50 2009
各位板友好,我卡关在这问题上面已有两个礼拜,实在很苦恼
运行环境:
IBM Lotus Expeditor 6.2 的DeviceEE
(supports Java ME Foundation 1.1)
(附注1:Expeditor是一个实作OSGi R4的platform)
(附注2:JRE版本1.4)
Websphere MQ 7.0.0.1
开发环境:
Eclipse 3.4 + Expeditor toolkit 6.2
问题是这样:
我想要在IBM Expeditor产品下的DeviceEE环境撰写连线到Websphere MQ
并可以用JMS来publish/subscribe message的通讯程式
目前已知:
我发现MQ提供了几个jar档,这些jar档内容符合OSGi规格,让我可以import这些
jar档来当成library撰写JMS程式
但是当我照着sample把我的环境参数填进去之後执行,发现library中某个
叫做Trace的class丢出NoSuchMethod Exception,意思是说JRE环境里的String
class里面缺少replaceAll这个函式。
我查看了一下DeviceEE中的JRE里面的classes.zip,发现确实没有replaceAll
大致观察这个运行环境,跟一般JRE 1.6比,它少了很多东西,只有一些基本的
lib
然後我又查询了一下Sun的JDK 1.6 source code,发现String里面是有replaceAll
这个函式的
我试着把DeviceEE环境中的String.class用JDK 1.6的String.class取代掉
但是似乎还是会错
後来我想说自己改一个符合JRE 1.4的String来用,但是replaceAll()里面有用到
Pattern.class,这个class似乎要JRE 1.5以上才会有
到这里就卡住了...
问题总结:其实大意就是,library使用了JRE 1.5以上才有的class,但是我的环境只有
JRE 1.4,不知道该如何是好?
拜托各位帮忙看看,提供小弟一些意见,感激不尽
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.228.22
※ 编辑: fallingrain8 来自: 114.45.228.22 (12/27 15:01)
1F:→ ken915007:Lotus Expeditor应该有另一套开发工具,会比较快速好用 12/27 16:17
2F:→ ken915007:上面会有所支援的版本~ 12/27 16:22
3F:推 ken915007:可以去ibm information center看看... 12/27 16:42
4F:→ ken915007:另外,可看看有没有fix pack可以升级上去的 12/27 16:50
5F:→ fallingrain8:我有灌他的toolkit,只是现在卡在这个问题>< 12/28 01:34
6F:→ ken915007:可以详细说一下所有的版本吗? 12/28 04:21
7F:→ ken915007:说实在的~我好久没用LE的东西了… 12/28 04:23
新增了Expeditor版本跟MQ版本资讯...
※ 编辑: fallingrain8 来自: 140.124.181.250 (12/28 12:09)
8F:→ ken915007:我突然想起来~LE不是有包含MQe跟DB2e… 12/28 12:42
9F:→ ken915007:我之前是透过MQe传到server後,在处理放入到MQ中… 12/28 12:46
10F:→ ken915007:可去看看redbook - sg246496 12/28 12:50
11F:→ fallingrain8:感谢ken提供资讯,我这就去看redbook 12/29 12:42