由于编译的 class 文件中缺少调试信息而导致参数错误

Paranamer error due to missing debug information in compiled class files

我正在尝试 运行 对部署在 WebSphere 上的应用程序进行 spring 批处理。当我 运行 使用 Eclipse 的批次时,所有 运行 都很好,但是当我 运行 在 WebSphere 上部署的应用程序中使用同一批次时,它给出错误

com.thoughtworks.paranamer.ParameterNamesNotFoundException: Parameter names  not found for executeMethod
    at com.thoughtworks.paranamer.BytecodeReadingParanamer$TypeCollector.getParameterNamesForMethod(BytecodeReadingParanamer.java:209)

我检查了 paranamer BytecodeReadingParanamer class 的源代码,它说

if (!collector.isDebugInfoPresent()) {
    if (throwExceptionIfMissing) {
        throw new ParameterNamesNotFoundException("Parameter names not found for " + methodName);
    } else {
        return Paranamer.EMPTY_NAMES;
    }
}

我认为这意味着 Java class 在 WebSphere 上未使用调试信息(-g 标志?)编译,而在 Eclipse 中,我有此信息。

如何在 WebSphere 上更正此错误?我们是否在 Java compiled classes flag 中添加调试信息?

感谢@minus,问题确实出在编译器上,因为编译器服务器中存在一些错误。参数或代码本身没有任何问题。必须修复编译器的错误。