为什么在Java中没有执行main.replay()方法?但是完全相同的代码在Fedora中工作,而不是在Archlinux中

为什么在Java中没有执行main.replay()方法?但是完全相同的代码在Fedora中工作,而不是在Archlinux中,java,linux,fedora,openjdk,archlinux,Java,Linux,Fedora,Openjdk,Archlinux,我有一个简单的播放器,我正在使用第三方库。完全相同的代码在我的Fedora桌面上工作。但是当我在Archlinux中使用完全相同的代码时,执行main.replay()是不起作用的 是什么原因造成的 public static void play(String gsttest) { try { gst.play(); gst.getBus().connect(new Bus.EOS() { public void

我有一个简单的播放器,我正在使用第三方库。完全相同的代码在我的Fedora桌面上工作。但是当我在
Archlinux
中使用完全相同的代码时,执行main.replay()是不起作用的

是什么原因造成的

public static void play(String gsttest)
{
    try {
        gst.play();
        gst.getBus().connect(new Bus.EOS() 
        {
            public void endOfStream(GObject source) 
            {
              //_7-------------_7
               main.replay(); //<< never getting executed in Archlinux 
              //_7------------_7      but Fedora it runs without any problem.                    
            } 
        });  

    } catch (Exception ex) {
    }               
}

My Java where its not working is:

$ java -version
java version "1.6.0_22"
OpenJDK Runtime Environment (IcedTea6 1.10.3) (ArchLinux-6.b22_1.10.3-1-x86_64)
OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode)

My Java where its working is:


$ java -version
java version "1.6.0_22"
OpenJDK Runtime Environment (IcedTea6 1.10.3) (fedora-59.1.10.3.fc15-i386)
OpenJDK Server VM (build 20.0-b11, mixed mode)
公共静态无效播放(字符串gsttest)
{
试一试{
gst.play();
gst.getBus().connect(新的Bus.EOS())
{
public void endOfStream(GObject源)
{
//_7-------------_7
main.replay();//你试过了吗

试试{…
}catch(可丢弃的t){t.printStackTrace();}

如果没有,它是否打印任何内容

如果您先声明该总线类,然后在connect中使用它,行为是否会改变?

您尝试过吗

试试{…
}catch(可丢弃的t){t.printStackTrace();}

如果没有,它是否打印任何内容


如果您先声明该总线类,然后在connect中使用它,行为会发生变化吗?

尝试java debugger,它以什么方式不工作?是否有异常?没有异常什么,只是忽略main.replay();但在Fedora中,它只在我可以直接看到的地方工作。你看不到任何异常,因为你吃了它们。删除空的catch(Exception ex)块,或者至少执行ex.printStackTrace()@Matej:i应用了ex.printStackTrace()。它根本没有显示任何内容。请尝试java debugger,它以什么方式工作?是否有任何异常?没有异常,它只是忽略main.replay();但在Fedora中,它只是在我可以直接看到的地方工作。你看不到任何异常,因为你吃了它们。删除空捕获(异常示例)块,或者至少执行ex.printStackTrace()@Matej:i应用了ex.printStackTrace()。它完全不显示任何内容。