Внешнее миди-устройство JFugue 5 на Mac - PullRequest
1 голос
/ 19 марта 2019

Я пытаюсь подключить клавиатуру PSR-A3000 для воспроизведения некоторых миди-файлов с компьютера. Когда я запускаю код:

import java.io.File;
import java.io.IOException;
import javax.sound.midi.InvalidMidiDataException;
import javax.sound.midi.MidiSystem;
import javax.sound.midi.Sequence;


public class jFugeFilePlayer {



    public static void main(String args[]) {
        DeviceThatWillReceiveMidi device = null;
        device = new DeviceThatWillReceiveMidi(); // handle MIDI Unavailable Exception
        Sequence sequence = null;

        try {
            sequence = MidiSystem.getSequence(new File("/Users/path.../baharanMelody.midi"));
        } catch (InvalidMidiDataException e) {
            // handle Invalid MIDI Data Exception
        } catch (IOException e) {
            // handle IO Exception
            e.printStackTrace();
        }
        device.setSequence(sequence);

    }
}

Я вижу, что у поста есть подобная проблема, и я не могу пойти дальше другого исключения на "device.sendSequence". JFugue 5 внешнее миди-устройство

Я получаю ошибку:

Building renderMidi 1.0-SNAPSHOT
------------------------------------------------------------------------

--- exec-maven-plugin:1.5.0:exec (default-cli) @ renderMidi ---
Exception in thread "main" java.lang.UnsupportedOperationException: Not supported yet.
    at DeviceThatWillReceiveMidi.setSequence(DeviceThatWillReceiveMidi.java:17)
    at jFugeFilePlayer.main(jFugeFilePlayer.java:34)
Command execution failed.
org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1)
    at org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:404)
    at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:166)
    at org.codehaus.mojo.exec.ExecMojo.executeCommandLine(ExecMojo.java:764)
    at org.codehaus.mojo.exec.ExecMojo.executeCommandLine(ExecMojo.java:711)
    at org.codehaus.mojo.exec.ExecMojo.execute(ExecMojo.java:289)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
------------------------------------------------------------------------
BUILD FAILURE

Я пробовал javaxsound.midi.MidiSystem, и это подтверждает, что мои устройства работают правильно. Я добавил трассировку стека, чтобы посмотреть, смогу ли я помочь.

Любые идеи о том, что я делаю не так, пожалуйста?

Любая помощь будет принята с благодарностью.

CS

...