Search on the blog

2013年9月15日日曜日

OSS日記(1) Commons Langの開発環境を作る



 Apache CommonsのCommons Langの開発環境をローカルマシン上で整えてみました。いくつかハマったところがあったのでメモを残しておきます。

1. EclipseからSVNを使えるようにする
1-1) 以下の2つのプラグインをインストール
  • Subversive Plug-In
  • SVN Connectors

2. SVNレポジトリをプロジェクトに取り込む
2-1) Window -> Open Perspective -> Java でJavaパースペクティブを開く
2-2) Pakage Explorerビューで右クリック -> New -> Other -> Project from SVNを選択する -> Next
2-3) URLに「http://svn.apache.org/repos/asf/commons/proper/lang/trunk」と入力
-> Advancedタブを選択し、Enable Structure Detectionをオフにする。 -> Next -> Finish
2-4) Check out as a project configured using the New Project Wizardを選択し
Finish
2-5) プロジェクト作成ウィザードが自動で立ち上がるので設定する
Java Projectを選択 -> Next
2-6) Project name: に「Commons-Lang」と入力 -> Finish
2-7) パスワードの設定
Secure Storageウィンドウが立ち上がる。適当にパスワードを設定する。

3. ビルドパスの設定
SVNから取り込んだだけだとEclipse上でビルドパスが正しく設定されないため、手動で設定が必要。
3-1) Package Explorer内の「Commons-Lang」プロジェクトを右クリック -> Properties -> Java Build Pathを選択 -> Sourceタブ
3-2) デフォルトで設定されているCommons-Lang/srcをRemove
3-3) Add Folder -> src/main/javaにチェック -> OK
3-4) Add Folder -> src/test/javaにチェック -> OK
3-5) OKを押してProperties for Commons-Langウィンドウを閉じる

4. 依存ライブラリのインポート
プロジェクト内でjunit, commons-ioなどが使用されているため、これらの外部ライブラリをインポートします。
pom.xmlが同梱されているので、Mavenを使って設定します。
4-1) Package Explorer内の「Commons-Lang」プロジェクトを右クリック -> Configure -> Convert to Maven Project

これだけ。Maven神だよっ!

5. Antの設定
5-1) /Commons-Lang/build.properties.sampleファイルをコピペして、/Commons-Lang/build.propertiesを作成
5-2) Ant関連ファイルを修正(REV 1523209の断面ではMavenで入れたバージョンと差異がある箇所や設定漏れがあるため)

■build.properties
repository=${user.home}/.m2/repository
junit.home=${repository}/junit/junit/4.11/ # 4.10を4.11に修正
easymock.home=${repository}/org/easymock/easymock/3.1/
commons-io.home=${repository}/commons-io/commons-io/2.4/
hamcrest.home=${repository}/org/hamcrest/hamcrest-core/1.3/ # 追記

■default.properties
repository=${user.home}/.m2/repository
# The location of the "junit.jar" JAR file
junit.jar = ${junit.home}/junit-4.11.jar # 4.10を4.11に修正

# The location of the Easymock jar
easymock.jar = ${easymock.home}/easymock-3.1.jar

# The location of the Commons-IO jar
commons-io.jar = ${commons-io.home}/commons-io-2.4.jar

# The location of the hamcrest Jar
hamcrest.jar = ${hamcrest.home}/hamcrest-core-1.3.jar # 追記

■build.xml
repository=${user.home}/.m2/repository
<!-- ========== Construct unit test classpath ============================= -->
<path id="test.classpath">
    <pathelement location="${build.home}/classes"/>
    <pathelement location="${build.home}/tests"/>
    <pathelement location="${junit.jar}"/>
    <pathelement location="${easymock.jar}"/>
    <pathelement location="${commons-io.jar}"/>
    <pathelement location="${hamcrest.jar}"/>   <!-- 追記 -->
</path>

6. ビルド&テスト実行
ようやく設定完了。試しにビルド&テストしてみます。
6-1)ビルド実行
build.xmlを選択 -> Outlineビュー -> compileを選択し右クリック -> Run As Ant Build

6-2)テスト実行
build.xmlを選択 -> Outlineビュー -> testを選択し右クリック -> Run As Ant Build

来たーーーーーーーーっ!

0 件のコメント:

コメントを投稿