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.<clinit>() (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 java1.4.2のGNU gcj版が入っている事がわかった。
java-1.4.2-gcj-compat
gcc-java-3.4.6-3.1
しかし、Java本家は既に1.6に上がっているので、取り敢えず新しい方に移行してみる事に。
# yum remove java-1.4.2-gcj-compatてな具合でGNU gcj版からJava本家版に差し替えてから、
# sh ./jdk-6u1-linux-amd64-rpm.bin
# sh ./JAlbuminstall.binするとインストーラーが起動し、無事インストール終了。
やんごとなき事情もいつしか解決してしまったのも謎だったり。
【参照】
●JAlbum http://jalbum.net/
●Java http://java.com/ja/