年別アーカイブ: 2010年

JDK 1.6.x のインストール (CentOS 5.5 64bit)

2013/4/26 追記
最新バージョンについては以下を参照してください。
@see 「Java SE 7 のインストール (CentOS 6.3 64bit)

試用感覚で2ヶ月間ほど OpenJDK を使いつづけてみましたが、特にこれといった問題には直面しませんでした。(「Eclipse インストールと日本語化 (CentOS 5.4 64bit) 編 」参照)
このまま使いつづけても良さそうですが、気づけば Sun が提供する JDK はバージョンが 1.6.0_21 まで進んでいました。Sun 製 JDK にバグが多いのか、それとも OpenJDK のパッチ速度が遅いのか判断に迷うところですが、そろそろ使い慣れた(?) JDK に復帰することとしました。

1. JDK のダウンロード

Sun (今は買収されて Oracle ですが。。。) のダウンロードページ Sun Developer Network (SDN) から最新の JDK をダウンロードします。
実行形式 (bin) 版と RPM 版がありますが、今回は RPM 版にしました。
本日時点の 64bit Linux 版の最新版は jdk-6u21-linux-x64-rpm.bin でした。

2. JDK のインストールとパスの設定

2.1. JDK のインストール

RPM 版についても実行形式版で提供されていますので、ダウンロードしたファイルを実行するだけでインストールは完了します。

# chmod a+x jdk-6u21-linux-x64-rpm.bin
# ./jdk-6u21-linux-x64-rpm.bin

インストール先は /usr/java 配下となります。

2.2. JDK へのパスを設定

/etc/profile にインストールした JDK へのパス定義を追加します。

/etc/profile への追記内容

# JDK
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin

/usr/java/default は 最後にインストールされた JDK へのリンクとなっています。(正確には /usr/java/latest へのリンクで、latest が JDK 本体へのリンクとなっています)

JAVA_HOME を /usr/java/default としているのは、将来、最新の JDK をインストールした場合でもパス設定を変更不要とするためです。

2.3. /etc/profile の有効化

変更した /etc/profile を有効化します。

$ source /etc/profile

3. OpenJDK のアンインストール

OpenJDK がインストールされたままだと /usr/bin 配下に javac や javadoc など多数のファイル (リンク) が存在しています。
前項でパス定義を追加してもこのままでは OpenJDK が読み込まれてしまうため、OpenJDK のアンインストールをおこないます。

3.1. インストール済み OpenJDK のパッケージ確認

yum コマンドでアンインストールするため、OpenJDK のパッケージ名を確認します。

# rpm -qa | grep java
sun-javadb-core-10.5.3-0.2
java-1.6.0-openjdk-devel-1.6.0.0-1.11.b16.el5
sun-javadb-demo-10.5.3-0.2
java-1.6.0-openjdk-1.6.0.0-1.11.b16.el5
sun-javadb-common-10.5.3-0.2
sun-javadb-docs-10.5.3-0.2
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
sun-javadb-javadoc-10.5.3-0.2
tzdata-java-2010i-1.el5
sun-javadb-client-10.5.3-0.2

java-1.6.0-openjdk-devel、java-1.6.0-openjdk、java-1.4.2-gcj-compat が不要となりそうです。

3.2. OpenJDK パッケージのアンインストール

yum コマンドで洗い出したパッケージを削除します。

# yum remove java-1.6.0-openjdk-devel

これで java-1.6.0-openjdk-devel パッケージの削除は完了です。

同様に java-1.6.0-openjdk と java-1.4.2-gcj-compat も削除するつもりでしたが、OpenOffice 他多数のパッケージと関連していたため削除はいったん見送りました。

3.3. /usr/bin 配下のリンク先変更

8/1 追記
alternatives コマンドでリンク先を切り替えた方がスマートに実現できるため、別途以下の記事を参照してください。
@see 「alternatives コマンドを使用した java バージョンの切り替え

java-1.6.0-openjdk と java-1.4.2-gcj-compat を残したため、/usr/bin 配下のリンク先を変更します。

まずは現在のリンク状況を確認します。

# cd /usr/bin
# ls -l java*
lrwxrwxrwx 1 root root 22 4月 18 18:11 java -> /etc/alternatives/java
lrwxrwxrwx 1 root root 28 7月 17 20:29 javaws -> /usr/java/default/bin/javaws

/usr/bin/java のみ変更すれば問題なさそうです。

# rm java
# ln -s /usr/java/default/bin/java java

変更後のリンク先を確認します。

# ls -l java*
lrwxrwxrwx 1 root root 26 7月 17 20:39 java -> /usr/java/default/bin/java
lrwxrwxrwx 1 root root 28 7月 17 20:29 javaws -> /usr/java/default/bin/javaws

4. 動作確認

version オプションを使用して Sun JDK が動作していることを確認します。

$ java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) 64-Bit Server VM (build 17.0-b16, mixed mode)

$ javac -version
javac 1.6.0_21

java、javac コマンド共に Sun JDK が動作していることが確認できました。

[ END ]

Eclipse Subversiveプラグインの使い方 編

Eclipse Subversiveプラグイン (CentOS 5.5 64bit) 編」に引き続き、Subversive の簡単な使いかたをまとめてみたいと思います。

1. 事前準備 sampleリポジトリの作成

svn グループに属するユーザで、sampleリポジトリを作成します。
詳細は「Subversionの使い方」を参照してください。

$ cd /var/svn/repos
$ mkdir sample
$ svnadmin create /var/svn/repos/sample
$ chgrp svn sample

trunk、branches、tags ディレクトリを import します。

$ mkdir ~/sample
$ mkdir ~/sample/trunk
$ mkdir ~/sample/branches
$ mkdir ~/sample/tags
$ cd ~/sample
$ svn import svn+ssh://localhost/var/svn/repos/sample/ -m "sample project"

2. リポジトリ設定の登録とチェックアウト

Eclipse の「SVN リポジトリー・エクスプローラー」パースペクティブを開き、「新規」-「リポジトリー・ロケーション」から「新規リポジトリー・ロケーション」画面を開きます。

20100530_01

URL svn+ssh://localhost/var/svn/repos/hello
ラベル sample project
ユーザー SVNサーバのログインユーザID
パスワード SVNサーバのログインパスワード

必要事項を入力し、「完了」ボタンを選択します。
接続設定完了後、「sample project」の「trunk」を選択し、右クリックメニューから「チェックアウト」を選択することで、Eclipse 上に sample プロジェクトが作成されます。(「svn checkout」コマンドに相当)

20100530_02 20100530_03

3. ファイルの追加とコミット

前項で作成したプロジェクト上で必要なプロジェクト設定 (「プロジェクト」-「プロパティー」-「Javaのビルドパス」等) を行った後、リポジトリに追加するソースを作成していきます。
今回の例では、過去のサンプル群を追加しました。

20100530_04

リポジトリに追加するディレクトリ/ファイルを選択し、右クリックメニューから「チーム」-「バージョン管理に追加」を選択すると、「SVN バージョン管理に追加」画面が表示されます。
今回の例では「src」ディレクトリを選択しました。

20100530_05

内容確認後、「OK」ボタンを選択することで該当ファイル群がバージョン管理対象となります。(「svn add」コマンドに相当)

20100530_06

対象ファイルのアイコン右下が「?」から「時計マーク(?)」に変わっています。

続いてリポジトリ管理対象となったファイル群のコミットを行います。
同様に右クリックメニューから「チーム」-「コミット」を選択すると「コミット」画面が表示されます。

20100530_07

コメントを入力後、「OK」ボタン選択でコミットが行われます。(「svn commit」コマンドに相当)

20100530_08

対象ファイルのアイコン右下が「DBマーク(?)」に変わり、リビジョン番号 (右側の数字) が「1」→「2」となっていることでコミット済みであることがわかります。

4. ファイルの変更と差分確認

コミットしたファイルの修正を行い、差分を確認します。
今回は、TestEntity.java に対してフィールド変数の追加とコンストラクタの変更を行いました。

TestEntity.java 変更箇所

     /**
     * Key値。
     */
    private int key;
    /**
     * コンストラクタ。
     * @param value データ
     */
    public TestEntity(String value) {
        this.key = value.hashCode();
        this.value = value;
    }

変更後にファイルの保存を行うと、変更したファイルの左側に「>」が表示されます。

20100530_09

変更したファイルを選択し、右クリックメニューから「比較」-「リポジトリーから最新」を選択すると「差分比較」画面が表示されます。(「svn diff」コマンドに相当)
GUIベースで確認可能なため、コマンドベースに比較して変更箇所がわかりやすいです。

20100530_10

5. チーム同期化 パースペクティブ

リポジトリとプロジェクトで差異のあるファイルをリストアップする場合、「チーム同期化」パースペクティブを使用すると便利です。
プロジェクトを選択し、右クリックメニューから「チーム」-「リポジトリーと同期化」を選択してください。「チーム同期化」パースペクティブが表示されます。

20100530_11

先ほど変更した TestEntity.java に加えて、まだ「SVN バージョン管理に追加」(svn add) を行っていないファイル群もリストアップされます。
この画面からも、差分の確認や個別ファイルごとのコミットに加えてマージ作業も行うことが可能です。

今回は全ファイルをコミットしたいと思います。
プロジェクトを選択し、右クリックメニューから「コミット」を選択します。

20100530_12

「コミット」画面のコンテンツ項目の意味は次の通りです。

  ・「変更」  : 修正を行ったがコミットしていないファイル
  ・「新規」  : バージョン管理に追加していないファイル
  ・「追加済み」: バージョン管理に追加したがコミットしていないファイル

前回と同様、コメントを入力して「OK」ボタン選択で全ファイルのコミットが行われます。

6. コミット内容の確認

「SVN リポジトリー・エクスプローラー」パースペクティブから、現在のリポジトリの状況が確認可能です。
一連の作業で trunk の下にプロジェクト内の全ファイルが登録されたことが確認できます。

20100530_13

[ END ]

Eclipse Subversiveプラグイン (CentOS 5.5 64bit) 編

Subversionの使いかた 」でコマンドベースによるリポジトリのチェックアウトやコミットの方法をまとめました。記事内では書きませんでしたが、コリジョン発生時のマージ等まで手を出すと大変な作業が発生します。

これら作業を容易にしてくれるのが Subversiveプラグイン です。
チェックアウトからソースの修正、コミットまでを Eclipse 上で完結できるため、非常に重宝するプラグインなのですが、CVS を使用するためのプラグインと異なり Subversiveプラグインは Eclipse IDE for Java EE Developers に含まれていないため、別途インストールする必要があります。

Subversiveプラグインも updateサイトを公開しているので、「新規ソフトウェアのインストール」メニューからのインストールをおこないます。
(*) インストールの詳細は「Eclipse プロパティエディタプラグイン (CentOS 5.5 64bit) 編 」の「1. updateの登録」「2. インストール」を参照してください。

1. Subversive SVN チーム プロバイダー のインストール

始めに Subversive SVN チーム プロバイダーをインストールします。
現在は Eclipse に組み込まれたプロジェクトであるため、updateサイトの登録は不要です。

「ヘルプ」-「新規ソフトウェアのインストール」から「Galileo」を選択します。

20100529_01

「コラボレーション」から「Subversive SVN チーム プロバイダー 0.7.8」 をチェックし「次へ」を選択、インストールを最後まで完了させてください。
その後の -clean オプション付再起動を忘れないでください。

2.「Subversive SVN コネクター」のインストール

ライセンスあたりが関係しているためか、「Subversive SVN コネクター」は別の updateサイトからインストールする必要があるのですが、一点注意が必要です。

Widnows環境の Eclipse では updateサイト「http://www.polarion.org/projects/subversive/download/eclipse /2.0/update-site/」からのインストールすれば問題ないのですが、Linux環境の場合、64bit版/32bit版ともに、バージョン の違いからか上記 updateサイトからインストールした SVN コネクターを認識してくれませんでした。

そのため、updateサイトを直接指定せずインストールを行いました。

2.1. コネクターのインストール ウィザードを起動

SVN コネクターがインストールされていない状態で、「ウィンドウ」-「パースペクティブを開く」-「その他」から「SVN リポジトリー・エクスプローラー」を選択します。

20100529_02

すると、自動的に「コネクターのインストール」画面が開きます。

20100529_03

2.2. インストール内容の確認

コネクターのインストール画面で「SVN Kit 1.3.0」を選択し、「完了」ボタンを選択するとインストールが始まります。

20100529_04

インストールを最後まで完了させ、再度 -clean オプション付再起動を行います。

3. 動作確認

「SVN リポジトリー・エクスプローラー」パースペクティブを表示します。

20100529_05

「新規」-「リポジトリー・ロケーション」を選択し、「新規リポジトリー・ロケーション」画面が表示されればインストールは成功です。
(*) もしも「http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/」から SVN コネクターをインストールしていると、ここでエラーとなってしまいます。

20100529_06

ここでは前回作成した helloリポジトリへの接続設定を行っています。

URL svn+ssh://localhost/var/svn/repos/hello
ラベル hello project
ユーザー SVNサーバのログインユーザID
パスワード SVNサーバのログインパスワード

「ラベル」項目と「パスワードの補完」項目の指定は任意です。
他サーバに SVNサーバをインストールしている場合は、「URL」項目の「localhsot」の箇所をサーバのホスト名に変更してください。

「完了」ボタンを選択し、設定内容に問題なければ helloリポジトリへの接続が追加されます。

20100529_07

「trunk」を選択し、右クリックから「チェックアウト」を選択すると、helloリポジトリから新たなプロジェクトが作成されます。

20100529_08

4. 補足

「コネクターのインストール」画面から SVN コネクターをインストールした場合、自動的に updateサイトの登録が行われています。
この時のURLは
  http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/
ではなく
  http://community.polarion.com/projects/subversive/download/eclipse/archive/I20091009-1900/
となっていました。

また、SVN コネクターのバージョンも異なっていました。

4.1. 正常動作したバージョン

SVN コネクター 2.2.1
SVNKit 1.3.0 2.2.1

 20100529_09

4.2 エラーとなったバージョン

SVN コネクター 2.2.2
SVNKit 1.3.2 2.2.2

 20100529_10

[ END ]