我需要自动化通过java连接到PowerDesigner的过程,以便从存储库中提取模型。我使用了OLE Automation JavaProxy文档来配置进程。
当尝试运行时,我得到了这个错误:
线程中的异常"主";java.lang.NoSuchMethodError:org.eclipse.swt.internal.ole.win32.COM.CoCreateInstance(Lorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclance/swt/interal/ole/win/GUID;[I(I在com.sybase.tf.powerdesigner.PdCommon.Application.start(Application.java:57(在com.sybase.tf.powerdesigner.PdCommon.Application.(Application.java:31(在com.sybase.tf.powerdesigner.PdCommon.Application.getInstance(Application.java:42(在OOM.src.createOOM.createOOM.CreateAndDisplayOOM(createOOM.java:37(在OOM.src.createOOM.createOOM.main(createOOM.java:28(
版本:
- PowerDesigner-16.5.5.0
- Eclipse 4.18
支持罐子:
- pdj2com_16.5.5.jar
- org.eclipse.swt.win32.win32.x86_64_3.115.100.v201202-1103.jar
以上问题已解决,谢谢
现在,我在再次连接以下问题时遇到了问题。
org.eclipse.swt.SWTException:无法执行操作。result=-217456383(com.sybase.stf.powerdesigner.com.COMException:com故障[HHRESULT:0x80990101](网址:org.eclipse.swt.ole.win32.ole.error(ole.java:345(网址:com.sybase.tf.powerdesigner.com.COMException.reiseOnFail(COMException.java:83(网址:com.sybase.tf.powerdesigner.com.IDispatchEx.risingInvoke(IDispatchEx.java:231(网址:com.sybase.tf.powerdesigner.PdCommon.IApplication.CreateModel(IApplication.java:84(位于OOM.src.createOOM.createOOM.createOOM(createOOM.java:68(在OOM.src.createOOM.createOOM.CreateAndDisplayOOM(createOOM.java:42(位于OOM.src.createOOM.createOOM.main(createOOM.java:28(由以下原因引起:com.sybase.stf.powerdesigner.com.COMException:com故障[HHRESULT:0x80990101]网址:com.sybase.tf.powerdesigner.com.COMException.reiseOnFail(COMException.java:88(…还有5个是否还有其他内容要添加到要连接的代码中?
我在网上找不到任何解决方案。请帮我弄清楚。提前谢谢。
swt.win.win32.x86_64 jar是64位的,所以我假设您使用的是64位Java。
在我的例子中,pdj2com jar的名称类似于64位版本的pdj2com _16.N.Nx64.jar。pdj2com_16.N.N.jar是32位版本的名称。