如何在GWT中使用org.apache.commons?

时间:2013-02-04 07:16:50

标签: gwt

我正在使用GWT 2.5.0。我想在org.apache.commons中使用一些方法。 GWT也想要添加外部jar的源代码。所以我下载了源文件和类文件,并在jar中合并。它没有给某些方法带来任何错误,但是某些org.apache类引用了这个包之外的其他类。所以它给出了以下错误

[ERROR] [rmchecking] - Errors in 'org/apache/commons/lang/StringUtils.java'
[ERROR] [rmchecking] - Line 237: The method isWhitespace(char) is undefined for the type Character

gwt中是否有任何包提供此org.apache.commons的相同设施?或如何在gwt中使用相同的包?

4 个答案:

答案 0 :(得分:12)

不能使用任何不兼容GWT的第三方jar。示例 apache-commons

提示 - 他们没有.gwt.xml文件告诉GWT编译器他们有GWT兼容代码。

然而,您可以将其分叉并使其成为您自己的gwt兼容的lib,来自apache common。示例 - http://code.google.com/p/gwt-commons-lang/

答案 1 :(得分:6)

由于StringUtils基于java正则表达式和GWT常规,因此不可能实现 表达式模拟器基于javascript。您需要自己编写

答案 2 :(得分:2)

我同意SSR,但如果涉及到一些混乱的调试,我不会感到惊讶。值得一提的是gwt-commons {{3}} 不幸的是仍然在阿尔法和谷歌番石榴。我使用google Guava,它与apache commons的目的相似。它甚至还有一些功能,其中apache commons不喜欢Optionals。 Guava有一个由谷歌创建的功能齐全的gwt版本,我在我自己的项目中使用。

答案 3 :(得分:1)

我设法将大部分Apache Commons Math 3.6.1转换为使用GWT 2.8.0进行编译,请参阅: https://github.com/murkle/commons-math/issues/1