Eclipseプラグインは普通はEclipseを起動後に設定ウィンドウを出して設定するものだが、
Eclipse起動時にいろんな状態(例えば、ファイルパスとか)を見て即座に設定したい場合がある。
そのようなプラグインを作る際のやり方を説明する。
1. AbstractUIPluginクラスを継承(extends)、IStartupクラスを実装(implements)するクラスを作る。
2. public void earlyStartup()をオーバーライドし、その中に起動時にやりたい処理を実装する。
3. プラグインプロジェクトのplugin.xml編集
1. Eclipseでplugins.xmlを開き、「拡張」タブクリック
2. 「拡張」画面にある「追加」ボタンをクリック
3. 「拡張ポイント」一覧が現れるので、「org.eclipse.ui.startup」を選択し、「完了」をクリックする。
4. 「拡張」画面に現れた「org.eclipse.ui.startup」の左についている△印をクリックして展開し、出てきた
ものをクリックする。
5. すると右側に「拡張要素詳細」が現れるので、「参照」ボタンを押し、1.~2.で作ったクラスを選択する。
4. 後はプラグインとしてプロジェクトをExportすればよい
以上です。
※参考
Eclipse起動時のプラグイン活性化
2011年7月16日土曜日
相対パスだったら絶対パスに直す
そのやり方について。
文字列が絶対パスかどうか判定して、もし相対パスだったらgetCanonicalPath()で絶対パス取得する。
基本だけど、ちゃんと記録しておこうと思って書きました。
文字列が絶対パスかどうか判定して、もし相対パスだったらgetCanonicalPath()で絶対パス取得する。
- File file = new File(str); // パスを引数に入れてFileインスタンス生成
- if (!file.isAbsolute()) { // 絶対パスの判定にisAbsolute()を使う
- try {
- str = file.getCanonicalPath(); // getCanonicalPath()で絶対パスを取得する
- } catch (IOException e) { // getCanonicalPath()は例外をthrowするのでcatchする
- e.printStackTrace();
- }
- }
File file = new File(str); // パスを引数に入れてFileインスタンス生成 if (!file.isAbsolute()) { // 絶対パスの判定にisAbsolute()を使う try { str = file.getCanonicalPath(); // getCanonicalPath()で絶対パスを取得する } catch (IOException e) { // getCanonicalPath()は例外をthrowするのでcatchする e.printStackTrace(); } }
基本だけど、ちゃんと記録しておこうと思って書きました。
2011年2月6日日曜日
Antの「scp」タスク
最近、Antを勉強する機会が多いのでそれ関連のネタでも。
今回は、Antタスク「scp」を試してみました。
SCPとはファイル転送を行うコマンド(Secure CoPy)であり、それが実行できるタスクとなっています。
手順を説明する前に前提を述べておくと、
です。
1. jcraft.jar追加
Antでscpタスクを使うためには、クラスパスにjcraft.jarを追加しておく必要があります。
「ウィンドウ」→「設定」→「Ant」→「ランタイム」→「グローバル項目」と辿り、「グローバル項目」を選択した状態で、右側にある「外部 Jar 追加」ボタンを押します。jcraft.jarは以下のパスにありますので、それを選択して「開く」を教えてください。
注意:ECLIPSE_HOMEとはEclipse本体が置かれているフォルダのことです。
注意:ヴァージョンによって、jcraft.jarの名前が異なる可能性あります。
2. 転送するファイル作成
名前はとりあえず、sample.txtとしておきます。中身は適当に。
3. Antスクリプト作成
Antスクリプトを書きます。scpタスクの各属性は以下の通りです。
file:転送するファイル
todir:転送先。「"サーバのユーザ名":"パスワード"@"サーバのURL":"転送先のディレクトリ"」と書きます。
ひとまず転送されることだけを確認したいので、Antスクリプトは転送するファイルと同じフォルダに置きました。
あと、パスワードを直に書かないといけないのなんとかできないかねぇ・・・
3. 実行
スクリプト上で右クリックし、「実行」→「Ant 実行」を選ぶと実行されます。成功すると以下のようなメッセージがコンソールに現れます。
4. 確認
転送先にファイルがあるか確認します。ファイルはsample.txtで、場所はユーザのカレントディレクトリにあるはずです。lsコマンドで見てみると
確かにありました。
以上です。
・scpタスクの他の属性は以下が参考になるかと。
http://www.ne.jp/asahi/hishidama/home/tech/ant/tag/scp.html
・その他、ゲストOSにsshでアクセスできない場合はこちらが参考になるかな。
http://syo.cocolog-nifty.com/freely/2008/08/vmwareosssh_2278.html
今回は、Antタスク「scp」を試してみました。
SCPとはファイル転送を行うコマンド(Secure CoPy)であり、それが実行できるタスクとなっています。
手順を説明する前に前提を述べておくと、
- 転送元のマシンはWindows 7、転送先のマシンはUbuntu10.04(vmwareで起動)
- Eclipse使用(AntスクリプトをEclipse上で作成)
- Ubuntu上でsshサーバ起動済み(vmwareのUbuntu10.04はデフォルトではsshがインストールされていないので、インストールする場合は「sudo apt-get install ssh」を実行する。
です。
1. jcraft.jar追加
Antでscpタスクを使うためには、クラスパスにjcraft.jarを追加しておく必要があります。
「ウィンドウ」→「設定」→「Ant」→「ランタイム」→「グローバル項目」と辿り、「グローバル項目」を選択した状態で、右側にある「外部 Jar 追加」ボタンを押します。jcraft.jarは以下のパスにありますので、それを選択して「開く」を教えてください。
ECLIPSE_HOME\plugins\com.jcraft.jsch_0.1.41.v200903070017.jar
注意:ECLIPSE_HOMEとはEclipse本体が置かれているフォルダのことです。
注意:ヴァージョンによって、jcraft.jarの名前が異なる可能性あります。
2. 転送するファイル作成
名前はとりあえず、sample.txtとしておきます。中身は適当に。
3. Antスクリプト作成
Antスクリプトを書きます。scpタスクの各属性は以下の通りです。
file:転送するファイル
todir:転送先。「"サーバのユーザ名":"パスワード"@"サーバのURL":"転送先のディレクトリ"」と書きます。
ひとまず転送されることだけを確認したいので、Antスクリプトは転送するファイルと同じフォルダに置きました。
あと、パスワードを直に書かないといけないのなんとかできないかねぇ・・・
3. 実行
スクリプト上で右クリックし、「実行」→「Ant 実行」を選ぶと実行されます。成功すると以下のようなメッセージがコンソールに現れます。
4. 確認
転送先にファイルがあるか確認します。ファイルはsample.txtで、場所はユーザのカレントディレクトリにあるはずです。lsコマンドで見てみると
確かにありました。
以上です。
・scpタスクの他の属性は以下が参考になるかと。
http://www.ne.jp/asahi/hishidama/home/tech/ant/tag/scp.html
・その他、ゲストOSにsshでアクセスできない場合はこちらが参考になるかな。
http://syo.cocolog-nifty.com/freely/2008/08/vmwareosssh_2278.html
2011年2月5日土曜日
VMwareでUbuntuを8.04から10.04にアップグレードしたらキーボード入力できなくなった・・・
ブログほったらかしですみません(´・ω・`) 仕事落ち着いたらデザパタ再開します。
久々にVMwareでUbuntuを起動したら「10.04にアップグレードできます」と出てたので、アップグレードしました。
アップグレード自体はすんなりはいったものの、再起動後ログインしようとしたらキーボード入力が全くできない((((;゚Д゚))))
「Ubuntu 10.04 アップグレード キーボード」でググると、どうやらバグで受け付けないらしい。
※ちなみに使っているキーボードはDELLのワイヤレスキーボードです。
対処法は
1. ログイン画面の右下にある「ユニバーサル・アクセスの設定」ボタンをクリックする。
2. 「オンスクリーン・キーボードを使う」にチェックを入れる。
3. オンスクリーン・キーボードでパスワードを入力する。ちなみに大文字は上矢印キーをクリックすればおk
4. ログイン後、端末を立ち上げる。
5. 「sudo dpkg-reconfigure console-setup」を実行して設定し直す。ただし、キーボード入力ができないので、あらかじめホスト側のマシンで上の文字列をコピーしておき、ゲスト側(Ubuntu)で右クリックして「貼り付け」する。
6. 「sudo rm /etc/X11/xorg.conf」を実行する。ただし、キーボード入力ができないので(ry
7. 再起動する。
これでようやく入力できるようになりました。
参考URL:
http://blog.livedoor.jp/moonlight_aska/archives/50479993.html
http://nicenature.air-nifty.com/kurohige/2010/05/linux-vmwareubu.html
http://gihyo.jp/admin/clip/01/ubuntu-topics/201005/07
久々にVMwareでUbuntuを起動したら「10.04にアップグレードできます」と出てたので、アップグレードしました。
アップグレード自体はすんなりはいったものの、再起動後ログインしようとしたらキーボード入力が全くできない((((;゚Д゚))))
「Ubuntu 10.04 アップグレード キーボード」でググると、どうやらバグで受け付けないらしい。
※ちなみに使っているキーボードはDELLのワイヤレスキーボードです。
対処法は
1. ログイン画面の右下にある「ユニバーサル・アクセスの設定」ボタンをクリックする。
2. 「オンスクリーン・キーボードを使う」にチェックを入れる。
3. オンスクリーン・キーボードでパスワードを入力する。ちなみに大文字は上矢印キーをクリックすればおk
4. ログイン後、端末を立ち上げる。
5. 「sudo dpkg-reconfigure console-setup」を実行して設定し直す。ただし、キーボード入力ができないので、あらかじめホスト側のマシンで上の文字列をコピーしておき、ゲスト側(Ubuntu)で右クリックして「貼り付け」する。
6. 「sudo rm /etc/X11/xorg.conf」を実行する。ただし、キーボード入力ができないので(ry
7. 再起動する。
これでようやく入力できるようになりました。
参考URL:
http://blog.livedoor.jp/moonlight_aska/archives/50479993.html
http://nicenature.air-nifty.com/kurohige/2010/05/linux-vmwareubu.html
http://gihyo.jp/admin/clip/01/ubuntu-topics/201005/07
登録:
投稿 (Atom)