Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Windows RegCreateKeyEx(...) returned error code 5.

package ilearn;

import java.util.Arrays;
import java.util.List;

public class ProgramaMusic {

    public static void main(String[] args) {

        NotasMusicais notasMusicais = new NotasMusicais();

        List<Nota> DoReMiFa = Arrays.asList(notasMusicais.pegaNota("do"), notasMusicais.pegaNota("re"),
                notasMusicais.pegaNota("mi"), notasMusicais.pegaNota("fa"), notasMusicais.pegaNota("fa"),
                notasMusicais.pegaNota("fa"),

                notasMusicais.pegaNota("do"), notasMusicais.pegaNota("re"), notasMusicais.pegaNota("do"),
                notasMusicais.pegaNota("re"), notasMusicais.pegaNota("re"), notasMusicais.pegaNota("re"),

                notasMusicais.pegaNota("do"), notasMusicais.pegaNota("sol"), notasMusicais.pegaNota("fa"),
                notasMusicais.pegaNota("mi"), notasMusicais.pegaNota("mi"), notasMusicais.pegaNota("mi"),

                notasMusicais.pegaNota("do"), notasMusicais.pegaNota("re"), notasMusicais.pegaNota("mi"),
                notasMusicais.pegaNota("fa"), notasMusicais.pegaNota("fa"), notasMusicais.pegaNota("fa")

        );

        Piano piano = new Piano();
        piano.toca(DoReMiFa);
    }

}



package ilearn;

import java.util.List;

import org.jfugue.player.Player;


public class Piano {

    public void toca(List<Nota> musica) {

        Player player = new Player();

        StringBuilder sb = new StringBuilder();

        for (Nota nota : musica) {
            sb.append(nota.simbolo() + " ");

        }

        player.play(sb.toString());
    }

}

pessoal, estou tomando o seguinte erro abaixo ao executar a class ProgramaMusic, alguém poderia me auxiliar por favor?

jan 19, 2018 9:01:50 PM java.util.prefs.WindowsPreferences WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.

2 respostas
solução!

É um bug conhecido do Java no Windows.

Você pode rodar o programa a partir de um terminal de administrador, o que é meio chato.

Ou você pode fazer o seguinte: - Ir no "Iniciar" e buscar por regedit - Vá até HKEY_LOCAL_MACHINE\Software\JavaSoft (ou HKEY_LOCAL_MACHINE\Software\WOW6432Node\JavaSoft no Windows 10) - Botão direito, New -> Key - Use Prefs no nome

Tente novamente!

Alexandre Aquiles,

Muito obrigado!!!