Skip to content.

Sections
Personal tools
You are here: Home » コミュニティ » masarl memorial » homepage3.nifty.com » masarl » article » eclipse » Eclipse ― getenv プラグイン

Eclipse ― getenv プラグイン

Document Actions

Eclipse ― getenv プラグイン

2003/12/23石井 勝

getenvプラグインは,外部ツールまたは外部ツールビルダーで環境変数やプログラムのパス名を取得するためのプラグインです.Eclipseで環境変数を利用したい場合,あるいはプログラムのフルパス名を明示的に指定したくない場合にお使いください.

次の設定例では,環境変数HOMEをechoコマンドで出力しています.

外部ツールでの使用例

このプラグインはEclipse 2.1.2での動作を確認しています.Win32環境で使っていますが,Unix環境ではちゃんと動くかわかりません.環境変数取得のためにAntのorg.apache.tools.ant.taskdefs.Executeクラスを利用しているので,多分Unixでも動くんじゃないかと思います.

ダウンロード

バージョン 公開日 ダウンロード 説明
1.0.1 2003/12/23 getenv_1.0.1.zip -

使い方

このプラグインをインストールすると,「外部ツール」の設定で次の変数が使えるようになります.

変数名 意味 使用例 左の展開例
env 引数を環境変数に展開する ${env:HOME} c:\home\ishii
which 環境変数PATHを調べ,引数プログラムをフルパスに展開する ${which:echo} c:\cygwin\bin\echo.exe

なお,which変数は環境変数PATHの他にPATHEXTも調べています.PATHEXTはWindows環境で用いられる環境変数です.上で${which:echo}echo.exeと展開されているのは,PATHEXEの中に.exe拡張子が含まれているためです.もし拡張子つきで${which:echo.bat}とし,実際にecho.batがパス上にあれば,そちらが選択されることになります.

外部ツールでMakeを使おう

さて,このgetenvプラグインを使ってEclipseからMakeが使えるようにしてみましょう.まずは外部ツールの設定「メイン」タブです.

以下では,ロケーションに${which:make},作業ディレクトリに${project_loc}を指定しています.このとき,選択された項目のプロジェクト上でmakeが起動することになります.僕はプロジェクトのルート直下にMakefileを置くためこうしていますが,もし複数のフォルダにMakefileを置く場合は作業ディレクトリとして${resource_loc}を指定してもよいでしょう.

Make 外部ツールメインタブ

次に「最新表示」タブです.一般にmakeはファイルを生成・更新することが多いと思いますので,make終了後自動的に最新表示するようにします.さらに選択項目のプロジェクト内すべてのファイルを最新表示するという設定になっています.こうしておいた方が無難だと思います.

Make 外部ツール最新表示タブ

以上のようにすればMakefileのデフォルトターゲットをツールバーから簡単に呼び出すことができます.もっともターゲットを変えたい場合は不便ですが….

外部ツールビルダーでMakeを使おう

Eclipseのビルダーは,プロジェクトごとに設定されます.ビルダーを設定しておけば,「ビルド・プロジェクト」または「プロジェクトの再ビルド」コマンドが実行されるタイミングでそのビルダーが起動します.ここでは,ビルダーとしてMakeを登録する方法を紹介します.

外部ツールビルダーは,プロジェクトのプロパティを表示させれば設定できます.以下ではgetenv.build.mkという名前のビルダーが登録されています.

Make 外部ツールビルダー

ビルダーの中身は先ほどの外部ツールの設定とほぼ同じです.以下では,ビルダー用Makefileとしてbuild.mkというファイルがプロジェクト直下にあると仮定しています.

Make 外部ツールビルダーメインタブ

ここでMakefileの引数に${build_type}が指定されていることに注意してください.build_type変数は,コマンドの種類に応じて次のように展開されます.

コマンド ${build_type}の値
ビルド・プロジェクト incremental
プロジェクトの再ビルド full

つまり,ビルドのタイプに応じてMakefile側で普通のビルドか,フルビルドかを切り替えればよいわけです.このため${build_type}をターゲットとして渡しています.例えば,build.mkの中身は次のようになるでしょう.こうしておけば,Eclipseと連動してMakeを起動することができます.

#
# build.mkのサンプル
#

incremental: build ;

full: rebuild ;

rebuild: clean build;

build:
	# 通常のビルドコマンド

clean:
	# 生成したファイルの削除等

最後に,上記の設定で「バックグラウンドでツールを実行」がオフになっていることに注意してください.これは,Makeが確実にファイルを生成してから他のビルダーが起動するようにしておくためです.多くの場合こうしておいたほうが無難です.

更新履歴

  • 公開 ― 2003/12/23