0

Eclipse プラグインを作成し、Eclipse の「ヘルプ」メニューにヘルプのオプションを追加しました。そのヘルプをクリックすると、MessageBox が表示されます。

このメッセージ ボックスは、Eclipse アプリケーションで実行またはデバッグすると表示されますが、このプラグインを他の PC にデプロイして [ヘルプ] をクリックすると、メッセージ ボックスは表示されません。

これは私のコードです:

public class MyHelp implements IWorkbenchWindowActionDelegate {

    public void run(IAction arg0) {

        try {

        String message = "This is demo data";

        // TODO Auto-generated method stub
        MessageBox box = new MessageBox(new Shell(), SWT.OK);
        box.setMessage(message);
        box.setText("Help title");
        box.open();

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
}

誰でもこれで私を助けることができます..?

ヘルプのために、プラグインに ActionSet を次のように追加しました。

<extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            id="com.my.plugin.actionSet"
            label="My ActionSet"
            visible="true">
         <menu
               id="mymenu"
               label="My Menu" 
               path="help/helpStart">
            <groupMarker
                  name="start">
            </groupMarker>
            <separator
                  name="additions">
            </separator>
         </menu>
         <action
               class="com.myexample.MyHelp"
               id="MyHelp"
               label="Use Help"
               icon="icons/plugin_help.png"
               menubarPath="help/mymenu/start"
               style="push">
         </action>
        </actionSet>
   </extension>

他に何かする必要がありますか?

4

1 に答える 1

0

Eclipse >= 3.3 を実行している場合は、プラグイン フォルダーにドロップできます。また、でEclipseを再起動してみてください-clean option

手動でインストールするには、dropins フォルダーを使用することをお勧めします。ドキュメントを参照してください: http://wiki.eclipse.org/Equinox_p2_Getting_Started#Dropins

Upd1: コードを実行するために、実装されていないメソッドをいくつか追加する必要がありました (Eclipse バージョン 3.6 を使用しています)。

import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;

public class MyHelp implements IWorkbenchWindowActionDelegate {

    public void run(final IAction arg0) {

        final String message = "This is demo data";

      // TODO Auto-generated method stub
        final MessageBox box = new MessageBox(new Shell(), SWT.OK);
        box.setMessage(message);
        box.setText("Help title");
        box.open();

   }

    public void selectionChanged(final IAction action, final ISelection selection) {
        // TODO Auto-generated method stub

    }

    public void dispose() {
        // TODO Auto-generated method stub

    }

    public void init(final IWorkbenchWindow window) {
        // TODO Auto-generated method stub

    }
}

また、プラグインの MANIFEST に次の行があることを確認してください。プラグイン Bundle-SymbolicName: your_plugin_id;singleton:=true をワークスペースから Eclipse インスタンスの dropins フォルダーにコピーしたところ、すぐに使用できました。

プラグインのマニフェストが jar ファイルにあることは確かですか? Bin タブまたは build.properties を調べて、すべてが正しくエクスポートされていることを確認してください。

お役に立てれば

于 2013-03-18T10:00:16.920 に答える