JAlbum for Linux

HTMLアルバムを一括作成できるソフトJAlbumの7.1。

Linux版もあるという事なので、やんごとなき事情からお馴染みCentOS 4.4 64bits版」に入ようとしたところ、

[root@Andromeda ~]# sh ./JAlbuminstall.bin
Preparing to install...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...

Launching installer...

Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)

Stack Trace:
java.lang.NoClassDefFoundError: while resolving class: ZeroGe
at java.lang.VMClassLoader.resolveClass(java.lang.Class) (/usr/lib64/libgcj.so.5.0.0)
at java.lang.Class.initializeClass() (/usr/lib64/libgcj.so.5.0.0)
at _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib64/libgcj.so.5.0.0)
at ZeroGd.() (Unknown Source)
at java.lang.Class.initializeClass() (/usr/lib64/libgcj.so.5.0.0)
at _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib64/libgcj.so.5.0.0)
at com.zerog.ia.installer.LifeCycleManager.a(boolean) (Unknown Source)
at com.zerog.ia.installer.LifeCycleManager.b(java.lang.String[]) (Unknown Source)
at com.zerog.ia.installer.LifeCycleManager.a(java.lang.String[]) (Unknown Source)
at com.zerog.ia.installer.Main.main(java.lang.String[]) (Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.apple.mrj.MRJOSType not found in [file:/tmp/install.dir.4621/InstallerData/, file:/tmp/install.dir.4621/InstallerData/installer.zip, file:/usr/share/java/libgcj-3.4.6.jar, file:./, core:/]
at java.net.URLClassLoader.findClass(java.lang.String) (/usr/lib64/libgcj.so.5.0.0)
at gnu.gcj.runtime.VMClassLoader.findClass(java.lang.String) (/usr/lib64/libgcj.so.5.0.0)
at java.lang.ClassLoader.loadClass(java.lang.String, boolean) (/usr/lib64/libgcj.so.5.0.0)
at _Jv_FindClass(_Jv_Utf8Const, java.lang.ClassLoader) (/usr/lib64/libgcj.so.5.0.0)
at java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (/usr/lib64/libgcj.so.5.0.0)
at _Jv_BytecodeVerifier.verify_instructions_0() (/usr/lib64/libgcj.so.5.0.0)
at _Jv_VerifyMethod(_Jv_InterpMethod) (/usr/lib64/libgcj.so.5.0.0)
at _Jv_PrepareClass(java.lang.Class) (/usr/lib64/libgcj.so.5.0.0)
at _Jv_WaitForState(java.lang.Class, int) (/usr/lib64/libgcj.so.5.0.0)
at java.lang.VMClassLoader.linkClass0(java.lang.Class) (/usr/lib64/libgcj.so.5.0.0)
at java.lang.VMClassLoader.resolveClass(java.lang.Class) (/usr/lib64/libgcj.so.5.0.0)
...9 more
というエラーになり、インストールできない。

エラー要因はjava.lang.NoClassDefFoundErrorだと思われるので、ZeroGeを探してみるがさっぱり要領を得ず。

取り敢えず、JAlbumのサイトには"You need to install a Java 1.4 (or later) virtual machine"と書いてあるので、Javaのバージョンを確認すると、

$ rpm -qa | grep java
java-1.4.2-gcj-compat
gcc-java-3.4.6-3.1
1.4.2のGNU gcj版が入っている事がわかった。

しかし、Java本家は既に1.6に上がっているので、取り敢えず新しい方に移行してみる事に。

# yum remove java-1.4.2-gcj-compat
# sh ./jdk-6u1-linux-amd64-rpm.bin
てな具合でGNU gcj版からJava本家版に差し替えてから、
# sh ./JAlbuminstall.bin
するとインストーラーが起動し、無事インストール終了。

やんごとなき事情もいつしか解決してしまったのも謎だったり。

【参照】
●JAlbum http://jalbum.net/
●Java http://java.com/ja/