2

ピアノ音楽の演奏に関する私のAndroidプロジェクトなのでjfugue.jar、プロジェクトに追加しました。私のJavaコードは次のとおりです。

 line no:29    Player player=new Player();
 line no:30    player.play("C D E F G A B");

上記のコードは、ボタンの onclick リスナーに記述されています。それをクリックすると、次のようにbuttonなりRunTimeEexceptionます。

  02-25 09:20:54.062: W/dalvikvm(846): VFY: unable to find class referenced in signature (Ljavax/sound/midi/Sequencer;)

   02-25 09:20:54.082: I/dalvikvm(846): Could not find method javax.sound.midi.MidiSystem.getSequencer, referenced from method org.jfugue.Player.<init>

   02-25 09:20:54.082: W/dalvikvm(846): VFY: unable to resolve static method 3600: Ljavax/sound/midi/MidiSystem;.getSequencer (Z)Ljavax/sound/midi/Sequencer;

    02-25 09:20:54.082: D/dalvikvm(846): VFY: replacing opcode 0x71 at 0x0011
    02-25 09:20:54.092: W/dalvikvm(846): VFY: unable to find exception handler at addr 0x1c
     02-25 09:20:54.102: W/dalvikvm(846): VFY:  rejected Lorg/jfugue/Player;.<init> (Z)V
    02-25 09:20:54.102: W/dalvikvm(846): Verifier rejected class Lorg/jfugue/Player;

     02-25 09:20:54.122: D/AndroidRuntime(846): Shutting down VM
    02-25 09:20:54.122: W/dalvikvm(846): threadid=1: thread exiting with uncaught exception (group=0x40a70930)

     02-25 09:20:54.152: E/AndroidRuntime(846): FATAL EXCEPTION: main
     02-25 09:20:54.152: E/AndroidRuntime(846): java.lang.VerifyError: org/jfugue/Player
    02-25 09:20:54.152: E/AndroidRuntime(846):  at com.example.xyz.MainActivity$1.onClick(MainActivity.java:29)
4

2 に答える 2

3

jFugue を使用したことはありませんが、Android が javax.sound.midi を実装していないことが問題のようです。したがって、このパッケージの実装を見つけて開発する必要があります。

以下にいくつかのオプションについて説明します: javax.sound.midi 以外の Java での単純なフリー MIDI 実装:

于 2013-02-25T10:02:10.980 に答える
0

jarファイルをどこに挿入しましたか。また、jar ファイルをビルドしたかどうかも確認してください。

于 2013-02-25T09:45:40.810 に答える