Tomcat服务器找不到DigestUtils apache类

问题描述 投票:0回答:1

在构建Web应用程序时,我使用了org.apache.commons.codec.digest中的DigestUtils类。

当我使用它测试类时,我没有问题,所有内容都按预期编译和运行。

但是当我在Tomcat中使用它时(就像在servlet中一样),我收到以下错误:

java.lang.NoClassDefFoundError: org/apache/commons/codec/digest/DigestUtils

我已经对这个问题做了一些研究,但找不到能帮到我的解决方案。

这个问题有时会附加在我的其他发展上,所以我想知道如何为我的所有未来作品解决这个问题。

我知道Java 9默认情况下不包含所有模块,而且我已经阅读了一些问题,解决方案主要在classpath中?

我目前正在使用IDE IntelliJ IDEA,你能帮我解决这个问题吗?

使用DigestUtils的调用部分是:

private String hash(String value) {
    return DigestUtils.md5Hex(value);
}

我知道md5已被弃用,但这是客户要求。

该应用程序在Tomcat 9.0.4下运行

编辑:

  • 我已经将commons-codec添加到maven,如果我检查项目依赖项,那么她就在,所以问题就像预期的Tomcat一样无法使用它...

IntelliJ Maven commons-codec dependency

答案:

IntelliJ不包括从maven依赖项到WEB-INF / lib的所有库。

见:

java tomcat intellij-idea
1个回答
0
投票

你是否正在为你的项目使用Maven。确保apache公共编解码器jar在类路径中可用,或者添加了Web应用程序依赖项的一部分。

© www.soinside.com 2019 - 2024. All rights reserved.