Erro no Eclipse, mas não no NetBeans

Ola pessoal, esse código funciona no netbeans mas não no eclipse.

[code]import javax.sound.midi.*;

public class MusicTest1_01 {

public void play() {
    try {
        Sequencer sequencer = MidiSystem.getSequencer();
        System.out.println("Successfully got a sequencer");
        throw new MidiUnavailableException();
    } catch(MidiUnavailableException ex) {
        System.out.println("Bummer");
    }
}

public static void main(String[] args) {
    MusicTest1 mt = new MusicTest1();
    mt.play();
}

}[/code]
Mensagem do eclipse:

Exception in thread “main” java.lang.IllegalAccessError: class com.sun.media.sound.AbstractPlayer cannot access its superclass com.sun.media.sound.AbstractMidiDevice
at java.lang.ClassLoader.defineClass1(Native Method)
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$100(Unknown Source)
at java.net.URLClassLoader$1.run(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 java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
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$100(Unknown Source)
at java.net.URLClassLoader$1.run(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 java.lang.ClassLoader.loadClass(Unknown Source)
at com.sun.media.sound.MixerSequencerProvider.getDeviceInfo(MixerSequencerProvider.java:28
at javax.sound.midi.MidiSystem.getFirstDevice(Unknown Source)
at javax.sound.midi.MidiSystem.getFirstDevice(Unknown Source)
at javax.sound.midi.MidiSystem.getFirstDevice(Unknown Source)
at javax.sound.midi.MidiSystem.getDefaultDevice(Unknown Source)
at javax.sound.midi.MidiSystem.getDefaultDeviceWrapper(Unknown Source)
at javax.sound.midi.MidiSystem.getSequencer(Unknown Source)
at javax.sound.midi.MidiSystem.getSequencer(Unknown Source)
at cap11.MusicTest1.play(MusicTest1.java:7)
at cap11.MusicTest1_01.main(MusicTest1_01.java:18

Alguma ideia? do que pode ser isso.

Você está rodando os códigos na mesma JVM? Porque eles não me parecem depender de nada do IDE.

Você usou o package NomeDoArquivo; ?
No eclipse deve usar isso no começo, para afirmar que aquele arquivo faz parte de lá, pelo menos é isso que eu acho…

por exemplo:

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

Dá erro, mas esse aqui não /

package HelloWorld;

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

no pc que tem o eclipse é 1.7.0_5
e no netbeans é 1.7.e alguma coisa. Tenho que olhar quando chegar em casa.

-Tipo, esse código é pra funciona em qualquer JVM.1.7.pra CIMA ou não é pra rodar?

rodei sem o eclipse e dispara a mesma mensagem de erro.

vlw pela atenção Ataxexe.

[quote=Vynko]Você usou o package NomeDoArquivo; ?
No eclipse deve usar isso no começo, para afirmar que aquele arquivo faz parte de lá, pelo menos é isso que eu acho…

por exemplo:

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

Dá erro, mas esse aqui não /

[code]
package HelloWorld;

public class HelloWorld{
public static void main(String[] args){
System.out.println(“Hello World”);
}
}
[/code][/quote]
Acho que no teu eclipse não esta dando erro porque o teu pacote tem o mesmo nome da classe, mas no meu caso ele é diferente.
E se eu colocar o nome da classe o eclipse vai reclamar.

É totalmente possível que o package tenha nome diferente da classe, isso é definido na criação da class, se você editou o default package, deve ter ocorrido esse erro, ou se você nem ao menos saiba qual é o package, recrie o projeto e vá copiando e colando os arquivos nas novas classes