我正在尝试使用Apache Commons Lang jar (commons-lang3-3.1-bin.zip)中的 StringUtil类。
所以我将这个jar添加到我的类路径中,然后运行该程序
当我运行我的代码时,我得到一个例外的例外
"Caused by:java.lang.ClassNotFoundException:org.apache.commons.lang.StringUtils"
。
我使用java反编译器打开这个类,当我打开它的显示为
时
"// INTERNAL ERROR //"
。除了这个班级,所有其他班级都没问题。
之后我下载了源代码并编译了该类,我在java反编译器中打开了该编译类,然后它也显示了相同的错误。那么如何解决此问题以及如何使用此问题
答案 0 :(得分:1)
在commons-lang 2.xx和3.xx之间,软件包已经从org.apache.commons.lang
(根据例外,您的代码丢失)转移到org.apache.commons.lang3
,如屏幕截图所示。
要么降级为commons-lang 2.6,要么更新代码以将导入声明从org.apache.commons.lang.StringUtils
更改为org.apache.commons.lang3.StringUtils
答案 1 :(得分:0)
确保您下载的文件是正确的。
确保您添加到项目中的jar不是 commons-lang3-3.1-bin.zip ,但是在公共区域中 commons-lang3-3.1.jar -lang3-3.1-bin.zip。
答案 2 :(得分:0)
http://commons.apache.org/proper/commons-lang/article3_0.html
Java代码尽管标签向后不兼容,但在广阔的范围内 大多数情况下,只需在import语句中添加'3'即可 将足以让您的移民。
更改:import org.apache.commons.lang - >进口 org.apache.commons.lang3