ラベル eclipse の投稿を表示しています。 すべての投稿を表示
ラベル eclipse の投稿を表示しています。 すべての投稿を表示

2012年7月1日日曜日

[Python]Eclipseプラグイン「PyDev」インストールメモ

EclipseのPython開発用プラグイン「PyDev」のインストールメモです。
それにしても「パイデブ」って、何かそんな名前のマニア向けシリーズありそうっすね。

試した環境

  • Eclipse 3.7 Classic(非日本語化)
楽天にならって自分も英語力を強化しようと思い立ち、Eclipseは日本語化せず使用することを決心しました。そのため、当エントリにおけるEclipseのメニューや選択項目は英語となりますので、ご了承ください。あと画像はめんどくさいので無しで。

ところでEcilpseと言えば、確か毎年6月に新バージョンリリースされますが、今回覗いてみたらバージョン4.2がリリースされてました。プラグインの互換性とかどうなんだろう。

PyDevインストール

Available Software
「Help」メニュー >「Install New Software...」を押下。
「Work with」欄右にある「Add...」ボタンを押下し、以下情報を入力。
  • Name:お好きな値を ※俺なら「PyDev」
  • Location:http://pydev.org/updates
    ※ここの入力値は以下ページに記載されています。
    Download - PyDev
「OK」押下したらリストに「PyDev」ともう一つ表示される。「PyDev」展開して「PyDev for Eclipse」をチェックして「Next」押下。
Install Details
「Next」押下。
Review Licenses
「I accept…」選択して「Finish」
Installing Software
ひたすら待つ。途中「Do you trust these certificates?」と証明書を信頼するかどうか聞かれると思うので、表示された項目をチェックして「OK」押下。
完了したらEclipse再起動。
インストール確認
パースペクティブや新規プロジェクト作成ウィザードで「PyDev」が選択項目に存在していればOK。

Pythonインタプリタ設定

これやっとかないと、肝心の入力補完をやってくれません。
「Window」メニュー > 「Preferences」> 「PyDev」>「Interpreter - Python」と辿り、「New...」を押下。
表示されるダイアログに以下情報入力。
  • Interpreter Name:お好きな値を ※俺なら「Python2.7」
  • Interpreter Executable:Python実行ファイルのパス
    ※Windowsなら「C:\Python27\python.exe」とか
この通りなので、Eclipseを動かす環境上にPythonインストールしておく必要があります。

「OK」押下し、Pythonライブラリのディレクトリにチェックが入っていることを確認して再び「OK」。

最初のダイアログに戻るので、「System PYTHONPATH」に先程チェックが入っていたディレクトリが表示されているのを確認。

以上、ザッツオール。

Python実行環境はLinux。EclipseはWindows上。
Linux上にPython外部ライブラリいろいろ入れてるけど、Windows環境にも入れるのめんどくせぇよって時には

pipやeasy_installで追加したライブラリのディレクトリをSambaでマウントし、Windows側から参照できる状態にしておき、先程のインタプリタ設定の「System PYTHONPATH」に追加すればよろしい。Python2.7をソースからインストールしたCentOS6.2環境だと、ディレクトリのパスは
/usr/local/lib/python2.7/site-packages/
でした。

まあこの辺の設定のことだけを考えると、LinuxにX入れてそこで開発するのが一番楽だわな。

2011年12月25日日曜日

Selenium 2 事始め - Maven編

さて、前回エントリではSeleniumのJARファイルを手動配置してましたが、実際試した方はお分かりでしょうがJARファイルたくさんあります。これだとバージョン上げるときに大変です。
今回は、Seleniumのバージョンを指定すれば必要なJARを自動で探して取ってきてくれるMavenを使用した環境構築手順をご紹介します。
まあSeleniumとうよりは、殆どMavenの使い方です。
Mavenか…Javaメインだった前職の業務系SIerでは、4年半勤めて結局1回も使う機会は無かったなー…はー情けない…

各種ソフトウェアのバージョン

  • Maven 3.0.3
  • Selenium 2.15
  • Java SE 7
  • Firefox 9.0.1
  • eclipse 3.7
  • Windows 7

Mavenインストール

ダウンロード&配置
まずはアーカイブをダウンロード。
解凍したものは任意のディレクトリに配置。
環境変数設定
以下設定を追加。ルートディレクトリのパスはお使いの環境のものに置き換えてください。
  • Path : {Mavenルート}\bin
  • JAVA_HOME : {JDKルート}
動作確認
コマンドプロンプトでmvnコマンド実行してみてエラーが無ければOK。
C:\maven>mvn --version
Apache Maven 3.0.3 (r1075438; 2011-03-01 02:31:09+0900)
Maven home: C:\maven\bin\..
Java version: 1.7.0_02, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_02\jre
Default locale: ja_JP, platform encoding: MS932
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

Seleniumプロジェクト作成

以下コマンドでプロジェクト作成。「-DgroupId」でパッケージを、「-DartifactId」でプロジェクト名を指定します。
尚、以下のやり方だとコマンド実行したディレクトリに作成されます。多分オプションで作成先は指定できると思うけど、調べてないから知らん。
C:\maven>mvn archetype:create -DgroupId=com.example.selenium -DartifactId=Selenium2SampleByMaven
pom.xmlにSeleniumライブラリの依存設定追加
Mavenの肝。これ設定しておくと、必要なJARを勝手に取ってきてくれます。
バージョン上げるときは<version>変更するだけ。コンパイル(mvn complile)などのタイミングで取りに行きます。
公式サイトにある依存設定を<dependencies>タグ配下に追記します。

eclipseプロジェクトに変換
eclipseで読み込めるように「.project」や「.classpath」を作成してくれます。
ちなみにpom.xml編集していれば、このタイミングでJAR取得しにいきます。
> cd Selenium2SampleByMaven
> mvn eclipse:eclipse

eclipse設定

Maven関連の設定追加
設定ダイアログで[Java] -> [ビルド・パス] -> [クラスパス変数]と進み、「新規...」で追加します。
  • M2_REPO : {ローカルリポジトリのパス}
    ※デフォルトだと{ユーザールート}\.m2\repository
もう一個の方は設定ダイアログで[実行/デバッグ] -> [ストリング置換]と進み、「新規...」で追加します。
  • maven_exec : {Mavenルート}\bin\mvn.bat

あとは

作成したプロジェクトをeclipseにインポートして、前回エントリのサンプルを作って動かしてみてください。
ちなみに、当エントリのやり方だと、プロジェクトのコンパイラー設定がバージョン1.4になってしまっており、コンパイルエラーが発生しちゃってました。これも多分プロジェクト変換時にオプションで指定できると思います。追々調べて追記しときます。

参考

2010年9月7日火曜日

暴風前夜のeclipse

「.metadata」は定期的にバックアップしとけ

eclipseを長く使っていると、ある日突然、起動できない、ビルドできない等のトラブルが時々発生する。原因の殆どは、ワークスペースフォルダ直下でeclipseを設定情報を管理している「.metadata」の破損。トラブった際は.metadata内のあのファイルをああしろこうしろと言った情報がWebに溢れているが、定期的に丸ごとバックアップしておいてズドンと上書くのが一番手っ取り早いです(当然、バックアップ取得以降の変更内容は失われますが)。

SVN管理化のJavaソースファイル名称変更後に発生した、同期化エラートラブルの記録

一般的なトラブルかどうか分からんが、一応記録しておく。

SVN管理化のJavaクラスの名称を、リファクタリング機能にて変更した。Javaの場合、クラス名=ファイル名という決まりなので、必然的にファイル名も変更することになる。これにより、変更前のJavaファイルは「削除」、変更後は「新規」扱いとなり、それぞれコミットした。すると、それ以後、ファイル名変更をコミットしたメンバー(厳密にはworkspace?)以外の開発環境において、同期化エラーが発生するようになってしまった。

上記のトラブルは度々発生した。何が原因なのか結局わからなかったが、トラブル発生直前の操作内容を見聞すると、以下の共通点が浮かび上がってきた。
  1. クラス名を変更した。
  2. 変更するのにeclipseのリファクタリング機能を用いた。
  3. 新規ファイル(クラス名変更後のJavaファイル)は、「バージョン管理に追加」せずに、いきなりコミットした。
これらを踏まえて、クラス名変更時の手順を以下のようにしたら、トラブルは発生しなくなった。
  1. クラス名を変更する際は、リファクタリング機能は使わない。
    つまり、新名称のJavaファイルは新規作成、旧名称のは普通に削除。
  2. 新名称Javaファイルは、まず「バージョン管理に追加」し、それからコミットする。
上記解決方法は別の人が調べて持ってきてくれたのだが、1・2どちらか片方だけではダメだったのだろうか。まあ「ダメだった」って言ってたからダメなのだろうが…一度自分で試そうとしたが、これ以上トラブル発生して作業が停滞するのもしんどかったので(てかプチ炎上中だったし)、実行に映さず。

ちなみに、そのリポジトリのルートディレクトリに対するアクセス権限が与えられていなかったのだが、関係あるのかな?

別リポジトリ管理化のリソースをコピペしてくる際の注意事項

ユーティリティ群など汎用的な部品は、別プロジェクトで作成したものをコピーしてくるという事はよくやると思うが(※1)、その際は「.svn」はコピーしないこと。どのリポジトリに接続するかという情報はこの中で管理しているので、「.svn」ごとコピーしてしまうと、同期化時に別のリポジトリに対する接続ダイアログが何度も表示されたり、「遮断」的なエラーが発生したりする。

ちなみに、TortoiseSVNのエクスポート機能を利用すれば簡単に削除できる。

※1
てかjar化しろって話か。