将库复制到库文件夹 (NetBeans) 后找不到类



Java 的新手。作为一名DBA,这不是我通常生活的世界,但我IBM的CDC产品为任何真正的自动化提供了一组库。

https://www.ibm.com/support/knowledgecenter/en/SSTRGZ_11.3.0/com.ibm.cdcdoc.chcclp.doc/tasks/setupembeddedscript.html

如果我从.jar文件的绝对路径引用这些文件,即安装 IBM CDC 应用程序的位置,我可以导入并运行我的应用程序。但是,如果我将.jar文件复制到 NetBeans 中的库文件夹中,则会收到以下错误:

导入命令不会出错,在我运行它之前一切似乎都很好。任何建议将不胜感激。

Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/osgi/util/NLS
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.ibm.replication.cdc.scripting.EmbeddedScript.executeWithStatus(EmbeddedScript.java:231)
at com.ibm.replication.cdc.scripting.EmbeddedScript.execute(EmbeddedScript.java:159)
at cdcinterface.CDCInterface.main(CDCInterface.java:18)
Caused by: java.lang.ClassNotFoundException: org.eclipse.osgi.util.NLS
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 15 more
C:UsersroberdanAppDataLocalNetBeansCache8.2executor-snippetsrun.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)

这是 run.xml 的第 53 行:

<java classpath="${classpath-translated}" classname="${classname}" dir="${work.dir}" jvm="${platform.java}" fork="true" failonerror="${java.failonerror}">
<jvmarg value="-Dfile.encoding=${encoding}"/>
<redirector inputencoding="${encoding}" outputencoding="${encoding}" errorencoding="${encoding}"/>
<jvmarg line="${run.jvmargs}" />
<arg line="${application.args}" />
<syspropertyset>
<propertyref prefix="run-sys-prop."/>
<mapper from="run-sys-prop.*" to="*" type="glob"/>
</syspropertyset>
</java>

事实证明,问题出在 IBM 类本身。可以从服务器安装或客户端安装中获取类。我从客户端安装中复制了它们,但应该来自服务器。一旦我这样做了,一切都很好。

最新更新