YANO's digital garage

Copyright ©YANO All rights reserved. https://www.bravotouring.com/~yano/

Last-modified: 2024-05-10 (金)


[一語一絵/IT系]

JAlbum for Linux / 2007-05-08 (火)

HTMLアルバムを一括作成できるソフト[External]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を探してみるがさっぱり要領を得ず。

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

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

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

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

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

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