2015-07-03 125 views
0

我得到一个错误ClassNotFoundException的番石榴

java.lang.ClassNotFoundException: com.google.common.net.InternetDomainName 

试图运行下面的代码时:

private String getTopPrivateDomain(String url) { 
    return InternetDomainName.from(url).topPrivateDomain().toString(); 
} 

我已经下载guava-18.0.jar,我已经三检查它的存在在我的构建-路径。我也进口了com.google.common.net.*。在Eclipse中我没有得到任何错误或警告,程序编译也很好,但是当方法运行时它会抛出上述异常。

我不明白为什么当它明确导入并在构建路径中找不到该类时?

+0

嗯......很奇怪。如果它在运行时不存在,那么你会收到一个'NoClassDefFoundError'。 –

回答

1

该jar在运行时不在类路径位置中,但是它在Eclipse中配置。如果你使用Tomcat或类似的东西,它需要在/ lib目录中

+0

是的,我不知道我必须为Tomcat做不同的事情。我把它放在/ lib目录中,它工作正常。干杯! – Chris

+2

@Chris将JAR放入Tomcat的'lib'文件夹并不是一个好主意。将它放入你的webapps的WEB-INF/lib文件夹中。 –