1

Lizzy ライブラリ ( http://lizzy.sourceforge.net/ ) を使用してプレイリストを操作しようとしています。依存関係として、ビルド パスにCastor ライブラリ ( http://www.castor.org/ ) が必要です。そこで私はそのサイトに行き、Castor 1.3.1 をダウンロードしてから、.jar をビルド パスに入れました。

ただし、このコード行を実行して特定のプレイリスト ファイルを汎用プレイリスト オブジェクトに変換しようとすると、次のようになります。

specificPlaylist = SpecificPlaylistFactory.getInstance().readFrom(playlistFile);

最終的に NoClassDefFoundError が発生します。

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/exolab/castor/core/exceptions/CastorException
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(Unknown Source)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$000(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(Unknown Source)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$000(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.exolab.castor.mapping.Mapping.<init>(Mapping.java:81)
    at christophedelory.xml.XmlSerializer.getMapping(XmlSerializer.java:100)
    at christophedelory.playlist.asx.AsxProvider.readFrom(AsxProvider.java:202)
    at christophedelory.playlist.SpecificPlaylistFactory.readFrom(SpecificPlaylistFactory.java:132)
    at christophedelory.playlist.SpecificPlaylistFactory.readFrom(SpecificPlaylistFactory.java:168)
    ...

.jar ファイルがありませんか? 私は CastorException クラスのインスタンスを作成することができました (しかし、それは例外が話しているパッケージとは別のパッケージにありました)。基本的な Castor-1.3.1.jar ファイルには、必要なすべてのクラスが含まれていると思いました。

追加情報: Lizzy でサポートされているはずの .wpl プレイリスト ファイルをデコードしようとしています。そして私のビルドパスは次のようになります:

私のビルドパス

助けてくれてありがとう。

4

1 に答える 1

2

Castor jar を簡単に調べて、さまざまなツールを使用して内容を確認できます。WinZip はたまたま私が選んだツールです。CastorException が発生している間、それは間違ったパッケージにあることがわかります。

1.3.1 の下の古いダウンロード ページを見ると、Castor-1.3.1-core.jar が表示されます。調べてみると、適切なパッケージに CastorException が含まれています。他のjarも必要になる場合があります-ドキュメントを参照するか、試行錯誤を続けるか、POMを見つけようとします。

于 2012-03-30T18:48:16.817 に答える