eclipse-rcp - 没有为 NOTES 配置 LoginModules
问题描述
我希望有人能指出我正确的方向。我正在尝试使用 Eclipse 4.6.2(Windows 10 上的 32 位)为 Notes 10 配置开发环境。我正在使用的插件在使用 Eclipse 3 编译的 Notes 9 中工作,并继续按照在 Notes 10 中编译的方式工作,但我希望进行一些更改。我使用了Mikkel Heisterberg网站上的说明并修改了 VM 参数变量:
- install_id = 1564665877146
- rcp.home = c:\notes\framework
- rcp.base_version = 10.0.0.20181128-1343
问题是当我尝试启动插件时,notes UI 窗口打开,并显示消息No LoginModules 为 NOTES 配置,以及下面的 Eclipse 中的堆栈跟踪。我已经尝试在我的机器上与 eclipse 一起完全重新安装 notes/designer 安装。我也尝试在只有notes客户端的系统上重复这个过程,但总是达到同样的效果。我猜我的过程有问题,所以问题是,我需要做什么才能成功让 Eclipse 启动注释,以便我可以测试和调试我的插件。
任何帮助表示赞赏。
Configuration location:
file:/C:/Users/sdelicata/workspace-neon/.metadata/.plugins/org.eclipse.pde.core/Notes 2/
Configuration file:
file:/C:/Users/sdelicata/workspace-neon/.metadata/.plugins/org.eclipse.pde.core/Notes 2/config.ini loaded
Install location:
file:/c:/notes/framework/eclipse
Framework located:
file:/C:/notes/framework/rcp/eclipse/plugins/org.eclipse.osgi_3.11.3.20181108-1144.jar
Framework classpath:
file:/C:/notes/framework/rcp/eclipse/plugins/org.eclipse.osgi_3.11.3.20181108-1144.jar
Debug options:
file:/C:/Windows/System32/.options not found
Time to load bundles: 22
2019/08/11 21:26:11.784 SEVERE CWPPR0101E: Could not find file C:\Windows\System32\.config\rcpinstall.properties ::class.method=com.ibm.rcp.provisioning.internal.core.ProvisioningUtils.savePropertiesFile() ::thread=Start Level: Equinox Container: 5bab7e6c-fa69-414c-8c98-843705bd127d ::loggername=com.ibm.rcp.provisioning.internal.core
2019/08/11 21:26:11.850 WARNING CLFRU0029W: Your data is not currently roaming because you started the session with a different application than the Notes client (for example, Symphony or Designer). ::class.method=com.ibm.notes.roaming.provider.operations.NotesRoamingVeto.shouldRoam() ::thread=Start Level: Equinox Container: 5bab7e6c-fa69-414c-8c98-843705bd127d ::loggername=com.ibm.notes.roaming.provider.notesadapter
Starting application: 6951
osgi> Application Started: 10164
2019/08/11 21:26:15.299 SEVERE CWPST0081E: An error occurred while trying to locate the default login context. ::class.method=com.ibm.rcp.internal.security.auth.service.DefaultLoginContextService.getLoginContext() ::thread=main ::loggername=com.ibm.rcp.internal.security.auth.service
javax.security.auth.login.LoginException: No LoginModules configured for NOTES
at javax.security.auth.login.LoginContext.init(LoginContext.java:267)
at javax.security.auth.login.LoginContext.<init>(LoginContext.java:351)
at com.ibm.rcp.internal.security.auth.service.DefaultLoginContextService.getLoginContext(DefaultLoginContextService.java:119)
at com.ibm.rcp.security.auth.service.AbstractLoginService.login(AbstractLoginService.java:112)
at com.ibm.rcp.internal.security.auth.service.DefaultLoginContextService.login(DefaultLoginContextService.java:130)
at com.ibm.rcp.platform.personality.DefaultWorkbenchWindowAdvisor.doLogin(DefaultWorkbenchWindowAdvisor.java:2683)
at com.ibm.rcp.platform.personality.DefaultWorkbenchWindowAdvisor.postWindowCreate(DefaultWorkbenchWindowAdvisor.java:2079)
at org.eclipse.ui.internal.WorkbenchWindow.setup(WorkbenchWindow.java:680)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:966)
at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:151)
at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:118)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.inject(ContextInjectionFactory.java:73)
at org.eclipse.ui.internal.Workbench.createWorkbenchWindow(Workbench.java:1534)
at org.eclipse.ui.internal.Workbench.openWorkbenchWindow(Workbench.java:2662)
at com.ibm.rcp.platform.personality.e4.DefaultWBWRenderer.processContents(DefaultWBWRenderer.java:59)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:665)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:757)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:728)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:722)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:706)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1059)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:693)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at com.ibm.rcp.personality.framework.internal.RCPApplication.run(RCPApplication.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
at org.eclipse.equinox.launcher.Main.main(Main.java:1492)
2019/08/11 21:26:15.346 WARNING Keybinding conflicts occurred. They may interfere with normal accelerator operation. ::class.method=unknown ::thread=Thread-9 ::loggername=org.eclipse.ui.workbench
解决方案
我在使用 Eclipse 启动 Notes 11.0 时遇到了同样的错误。我相信这是需要插件依赖项的问题。这是我为解决它所做的:
- 升级到 Notes 12.0
- 重新加载 JRE 文件 (
Prefs
=>Java
=>Installed JREs
) - 重新加载插件(
Prefs
=>Plug-in Dev
=>Target Platform
) - 根据中的新值更新了我的 VM 参数变量
\Notes\framework\rcp\rcplauncher.properties
install_id=1629781684647
rcp.base_version=10.0.0.20210507-1607
rcp.home=C:\Progra~2\IBM\Notes\framework
- 重新选择所有运行配置插件(编辑
Run Configuration
=>Plug-ins
选项卡 =>Select All
)。我之前已将其设置为子集以避免重复/冲突。
我希望这可以帮助下一个人!
推荐阅读
- haskell - 为 RoseTree 定义 fmap
- mysql - 错误代码:1822。添加外键约束失败。引用表 'Collection' 中的约束 'employee_ibfk_1' 缺少索引
- flutter - MaterialApp中的路由是否需要添加页面?
- python - Python:如何使用鼠标和键盘事件查看 pdf 并在其上创建注释?
- c++ - 如何在二进制数的开头添加零
- linux - 另一个 postgres 未启动:“无法映射匿名共享内存”
- android - 如何使用 where 通过 DocumentReference 删除文档?安卓工作室
- pyspark - 输入与进程行在 pyspark 流编写器中显示为 0?
- c++ - PCL中的computeFeature函数在哪里修改?
- javascript - 如何在反应原生 iOS 模块中访问 AppDelegate 方法