问题标签 [apache-commons-codec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
113 浏览

java - 如何使用 JavaMail 的 MimeUtility 或 Apache Commons 和quoted-printable 获得 UTF-8 字符的两序列表示?

0 投票
1 回答
366 浏览

java - Android v1p1beta1 语音 - java.lang.NoSuchMethodError: 没有静态方法 decodeBase64

google v1当我使用语音库使用 Android Studio 构建测试语音应用程序时,它工作正常。使用v1p1beta1语音库,当它访问 json 凭据文件和旧版公共编解码器时会发生运行时错误并生成以下错误:

java.lang.NoSuchMethodError: 没有静态方法 decodeBase64 (Ljava/lang/String;)[B in class Lorg/apache/commons/codec/binary/Base64; 或其超类('org.apache.commons.codec.binary.Base64' 的声明出现在 /system/framework/org.apache.http.legacy.boot.jar 中)

如何让v1p1beta1语音库不使用旧的公共库版本?

这是引用最新v1p1beta1语音和grpc库的 gradle 文件:

这是堆栈跟踪错误输出:

引起:java.lang.NoSuchMethodError: No static method decodeBase64(Ljava/lang/String;)[B in class >Lorg/apache/commons/codec/binary/Base64; 或其超类(“org.apache.commons.codec.binary.Base64”的声明出现在 /system/framework/org.apache.http.legacy.boot.jar 中)在 com.google.api.client.util。 Base64.decodeBase64(Base64.java:101) 在 com.google.api.client.util.PemReader.readNextSection(PemReader.java:106) 在 com.google.api.client.util.PemReader.readFirstSectionAndClose(PemReader.java: 135) 在 com.google.auth.oauth2.ServiceAccountCredentials.privateKeyFromPkcs8(ServiceAccountCredentials.java:296) 在 com.google.auth.oauth2.ServiceAccountCredentials.fromPkcs8(ServiceAccountCredentials.java:

0 投票
1 回答
1036 浏览

java - 使用 Apache Commons 在 Groovy 中对图像文件进行 Base 64 编码

我正在尝试使用此站点上的说明将图像文件编码为 Base64 字符串。唯一的区别是我有一个 groovy 脚本(而不是 Java),我的整个脚本只是....

当我运行它时,我得到以下异常并且无法弄清楚为什么......

0 投票
1 回答
2527 浏览

java - Base64 无法解析 (Java 1.7)

我有以下片段,我有一些未解决的类 - 主要是 Base64

我尝试导入 commons-codec maven 存储库,但在 Eclipse 中它仍然说无法解析类:

我们现在使用 JDK7 有点卡住了,这可能是问题所在。这个 Base64 类是否仅适用于 Java 8?否则,如何将其导入我的应用程序?

0 投票
1 回答
107 浏览

java - Apache 通用编解码器 - 为什么 Hex.encode() 不是静态的?

Base64有许多返回 byte[] 的静态编码方法

MessageDigest也使用静态getInstance编码/摘要

但是Hex没有,它只有实例方法encode需要创建一个实例

我是否有理由需要创建实例来获取字节数组,或者有更好的方法吗?

例如,我目前认为添加getBytes()不是一个好主意

0 投票
2 回答
36 浏览

java - 尝试解码 Base64 后,接收 E/AndroidRuntime: FATAL EXCEPTION: main

我正在为 android 4.4 及更高版本构建一个简单的应用程序,我有一种使用 apache-commons-codec 库解码 base64 字符串的方法。

但是当我从主调用此静态方法时(如 className.decodeBase64(VAR)),我收到以下错误。 错误日志

我目前正在使用 jdk 8 和最新版本的 android studio。我知道 jdk8 实现了 base64 编码器/解码器,但我不能使用它,因为我仅限于编程到 8.0 的最新 android 版本

0 投票
0 回答
242 浏览

java - 无法使用 DigestUtils 计算 SHA-512

我有一个计算 SHA-512 摘要的函数。

它给了我以下错误

DigestUtils 类型的方法 sha512(byte[]) 未定义

此外,使用sha512Hex()而不是sha512()给我同样的错误。我努力了

但是没有用。我似乎唯一的选择是这些:

在此处输入图像描述

另外,我也尝试了http://commons.apache.org/proper/commons-codec/apidocs/org/apache/commons/codec/digest/DigestUtils.html中的方法,但似乎没有任何效果。

我正在使用 jdk-11.0.2,其他一切都很好。

0 投票
2 回答
283 浏览

java - OutOfMemoryError 与 apache commons Base64 静态方法 decodeBase64

在将 Base64 编码的字符串解码为字节数组时(必须这样做,因为我有一个可以作用于字节数组进行解密的密钥),我得到了 outOfMemory。处理这个问题的有效方法是什么?我是否应该将我的输入编码字符串分块为大小的分区,然后对其进行解码或任何其他有效的建议,请提出建议。

导致问题的代码。

堆栈跟踪

Eclipse 内存分析器内存使用情况:

在此处输入图像描述

Edit1:允许的最大 XMX 为 1 GB。

编辑2:JDK版本“1.8.0_91”

0 投票
1 回答
170 浏览

java - MacOS Catalina 是否会剥离 zip 文件中的可执行文件权限?

我使用 OpenJDK 11 和 Apache Commons Compress 1.20 创建了一个 zip 文件,该文件由使用 Netty 服务器的 API 返回。此 zip 文件包含具有可执行文件权限 (755) 的 gradle 包装器。

我用 Commons Compress 压缩它,在 API 响应中返回它,然后浏览器将 zip 保存到磁盘。

如果我在MacOS Mojave中提取 zip 文件,则 gradle 包装文件如下所示(带有扩展文件属性列表):

好的,它已被隔离,但仍可执行。执行它可以正常工作。

如果我在MacOS Catalina中提取 zip 文件,则 gradle 包装文件如下所示(带有扩展文件属性列表):

可执行文件权限已被 Catalina 删除。除了在解压后添加可执行文件权限之外,有什么方法可以规避这个问题吗?

0 投票
0 回答
68 浏览

spring-boot - Maven对系统范围依赖的传递依赖

我有一个 spring boot 项目(2.1.3),我必须在其中添加一个由我们的合作伙伴之一提供的 jar 文件(使用com.aesencgroup id 引用)。我将它添加为系统范围的依赖项,即使它违反了建议,因为这个 repo 已经有其他系统范围的依赖项(将来会解决这个问题)。由于合作伙伴提供的 jar ( commons-codec) 中的传递依赖关系,这破坏了其中一个 API 调用。Spring Boot 开始使用它commons-codec,而不是 spring bom 附带的那个。为了解决这个问题,我向系统范围的依赖项添加了排除项

这并没有解决问题。因此,在浏览了 maven 文档后,我commons-codec在当前项目中添加了更新版本作为依赖项,使其成为依赖关系图中的直接子项

仅此一项也没有解决问题。但是通过将它移到com.aesencpom 文件中的上方,问题得到了解决。所以我对我对 Maven 中依赖解析是如何发生的理解感到困惑。

我的假设是,这就是依赖树的样子,只需将 v1.15 添加为依赖项就可以解决问题,而不管它在 pom.xml 中的顺序如何。

想知道我的假设哪里出错了。