- PR -

Eclipseプラグインで、他のプラグインのクラスを参照する

1
投稿者投稿内容
しんい
ベテラン
会議室デビュー日: 2005/09/01
投稿数: 55
投稿日時: 2007-01-30 09:40
お世話になっております。

Eclipseプラグインを開発中です。
プラグインAからプラグインBのクラスを参照したいと考えております。
プラグインAは描画のみを担当します。プラグインBは定型のクラスとそのデータが入っております(具体的には、Personクラスに、数人分の名前データが入っています)。

この時、クラスをClassファイル化して、プラグインBを『既存のJARファイルのアーカイブ』にすれば、参照する事ができるのですが、通常のプラグインプロジェクトでは参照する事ができません。
開発中の為、データを変更する事もありますし、何より手間が掛かるので、通常のプラグインプロジェクトで参照する方法を知りたいと思います。
何卒、よろしくお願い致します。

[ メッセージ編集済み 編集者: しんい 編集日時 2007-01-30 09:43 ]
しんい
ベテラン
会議室デビュー日: 2005/09/01
投稿数: 55
投稿日時: 2007-01-30 10:15
お世話になっております。

追記です。
すみません、プロジェクト間のやり取りでなくとも、javaプロジェクト等にビルドパスを通して参照できる形のどちらかで実現したいと考えております。
つまり、今の知識ではわざわざClassファイルを生成しなくてはいけませんが、それを回避したいのです。
ちなみに、通常のjavaプロジェクトにビルドパスを通すと、importはできるのですが、「ビュー sample/Person を作成できません」と出ます。
一応詳細です。
java.lang.NoClassDefFoundError: sample/Person
at customviewplus.views.SimplestView.createPartControl(SimplestView.java:86)
at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:332)
at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:197)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
at org.eclipse.ui.internal.Perspective.showView(Perspective.java:1675)
at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:987)
at org.eclipse.ui.internal.WorkbenchPage.access$13(WorkbenchPage.java:968)
at org.eclipse.ui.internal.WorkbenchPage$13.run(WorkbenchPage.java:3514)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3511)
at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3487)
at org.eclipse.ui.handlers.ShowViewHandler.openView(ShowViewHandler.java:148)
at org.eclipse.ui.handlers.ShowViewHandler.openOther(ShowViewHandler.java:104)
at org.eclipse.ui.handlers.ShowViewHandler.execute(ShowViewHandler.java:70)
at org.eclipse.ui.internal.ShowViewMenu$3.run(ShowViewMenu.java:114)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:499)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3348)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2968)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
at org.eclipse.core.launcher.Main.run(Main.java:977)
at org.eclipse.core.launcher.Main.main(Main.java:952)

よろしくお願い致します。
1

スキルアップ/キャリアアップ(JOB@IT)