的幫助下獲得一個錯誤,如果使用Apache Commons Validator並:NoClassDefFoundError的問題與Apache Commons Validator並
java.lang.NoClassDefFoundError:組織/阿帕奇/奧羅/文本/ perl的/ Perl5Util
即使,Apache的百科全書驗證器/依賴關係聲明ORO.jar是可選的。
的幫助下獲得一個錯誤,如果使用Apache Commons Validator並:NoClassDefFoundError的問題與Apache Commons Validator並
java.lang.NoClassDefFoundError:組織/阿帕奇/奧羅/文本/ perl的/ Perl5Util
即使,Apache的百科全書驗證器/依賴關係聲明ORO.jar是可選的。
將包含「org/apache/oro/text/perl/Perl5Util」類的jar包放入服務器,並修改服務器的類路徑以包含jar文件。
我再次搜索雅加達Oro.jar(這是不是在其官方網站給出),並在這裏找到它http://www.java2s.com/Code/Jar/ABC/Downloadjakartaorojar.htm – 2011-04-18 18:34:29
顯然你正在使用需要該類的東西。
編譯器勝過文檔。
是的,它需要Jakarta Oro jar文件。在Apache Commons Validator依賴關係列表中,這是可選的。所以不包括在classpath中。但現在只是包括它和它的工作。感謝您的建議。 – 2011-04-18 18:47:25
您需要獲取Apache oro。我已經版本2.0.8,雖然Maven,它有Perl5Util:
mpandit-mbp:2.0.8 mpandit$ jar tvf oro-2.0.8.jar | grep 'Perl5Util'
7818 Sun Dec 28 23:00:18 PST 2003 org/apache/oro/text/perl/Perl5Util.class
雖然!我得到了Jakarta Oro jar文件。代碼現在正在工作。我會保留這些信息以備將來參考。感謝幫助。 – 2011-04-18 18:43:25
我在Apache的Validator版本1.3.1有這個問題。我回滾到1.3.0,它包含了oro依賴關係。
如果你不依賴於點發布的東西,也許這也可以爲你工作。
我確認我有驗證器1.3.1 depandencies並回滾到1.3.0的問題解決了這個問題。我會推薦這個答案,直到Apache解決問題。 – user327961 2012-09-29 20:06:20
commons-validator的較新版本(1.4.0)不再依賴oro。 使用Maven:
<dependency>
<groupId>commons-validator</groupId>
<artifactId>commons-validator</artifactId>
<version>1.4.0</version>
</dependency>
您可以下載此依賴項以獲取Perl5Util。
<dependency>
<groupId>oro</groupId>
<artifactId>oro</artifactId>
<version>2.0.8</version>
</dependency>
當commons-validator的依賴關係報告顯示oro是「optional」時,這意味着它是可選的,除非您使用需要它的類 - 如果發生此異常,您必須這樣做。 – 2011-04-18 18:29:55