我正在尝试为 oracle-ucm 创建自定义 Java 组件。
它可以正确安装,但是当我运行代码时,我得到:
系统代码执行错误。无法创建服务。 java.lang.NoClassDefFoundError:com/lowes/content/edam/massMetaDataUpdate/service/ServiceApplication。
component.hda 文件如下所示:
<?hda version="11.1.1.8.0PSU-2015-01-08 07:49:21Z-r123144" jcharset="UTF8" encoding="utf-8"?>
@Properties LocalData
ComponentName=LowesMassMetadataUpdater
blDateFormat=M/d{/yy}{ h:mm[:ss]{ a}}!mAM,PM!tAmerica/New_York
classpath=$COMPONENT_DIR/classes
hasPreferenceData=0
libpath=$COMPONENT_DIR/libs
preventAdditionalComponentDowngrade=0
version=2016_06_08(build 1)
@end
作为引用,我的服务类的开头如下所示:
包 com.lowes.content.edam.massMetaDataUpdate.service;
import intradoc.server.Service;
public class MMUService extends Service
{ //this is the line that is throwing the error.
private ServiceApplication app = new ServiceApplication();
/** Default Constructor - Does Nothing */
public MMUService() { }
//rest of class omitted for brevity
}
我的组件在 MMUService 类中配置启动,该类与找不到的类位于同一包中。两个类文件直接位于同一文件夹中。那么为什么它可以找到初始服务类,但不能找到同一包中包含的帮助程序类呢?
<小时/>组件向导中的高级build设置
除以下内容外均为空白:
自定义类路径: $COMPONENT_DIR/classes
自定义库路径: $COMPONENT_DIR/libs
最佳答案
关于java - WCC 中自定义 Java 组件出现 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37706883/