我正在尝试在 WebSphere 上部署的应用程序上运行 spring 批处理。当我使用 Eclipse 运行批处理时,一切运行良好,但是当我在 WebSphere 上部署的应用程序中运行相同的批处理时,它给出了错误
com.thoughtworks.paranamer.ParameterNamesNotFoundException: Parameter names not found for executeMethod
at com.thoughtworks.paranamer.BytecodeReadingParanamer$TypeCollector.getParameterNamesForMethod(BytecodeReadingParanamer.java:209)
我检查了参数类的源代码,BytecodeReadingParanamer
它说
if (!collector.isDebugInfoPresent()) {
if (throwExceptionIfMissing) {
throw new ParameterNamesNotFoundException("Parameter names not found for " + methodName);
} else {
return Paranamer.EMPTY_NAMES;
}
}
我相信这意味着 Java 类没有-g
在 WebSphere 上使用调试信息(标志?)进行编译,而在 Eclipse 中,我有这些信息。
如何在 WebSphere 上更正此错误?我们是否在 Java 编译类标志中添加了调试信息?