编译器总是在具有相同JDK的每台计算机上获得不同的错误

时间:2012-08-03 19:17:51

标签: compilation java

我的笔记本电脑和桌面上都有相同版本的JDK。我的笔记本电脑是Windows 7,我的桌面是Windows XP。当我在桌面上运行我的游戏时,它说无法找到或加载主类客户端。当我在我的笔记本电脑上运行时,它找到了它。我为每台计算机正确设置了java和jdk 1.7u4的版本。当我编译游戏时,我在桌面上有错误,我没有在笔记本电脑上得到。我会发布我的代码,但我知道这不是编码错误,因为它可以在一台计算机上运行,​​但不能在另一台计算机上运行。我已经检查了所有细节一百万次,甚至尝试修复我从编译中获得的随机错误,但没有进展。我不想总是从笔记本电脑上编辑我的游戏客户端,因为我在桌面上托管游戏。如果有人以前遇到过这个问题,请告诉我你是如何解决的。如果你已经拥有它但无法解决它,至少让我知道我不是唯一一个发生这种情况的人。我找不到谷歌的任何解决方案,我甚至尝试使用不同版本的JDK。(1.7u1)所以,如果它不是java,那不是我的游戏,它必须是我的电脑。什么可能导致我的电脑对我的游戏这样做。其他东西编译得很好,这只是我的游戏客户端无法编译。那么再说一遍,它是关于我的游戏的东西,即使它在我的笔记本电脑上运行并且用于在我的桌面上工作?这太令人困惑了。

如果是因为我的客户端,现在我再次阅读了几次编译器,它可能是。所以这里是错误:

.\Javafiles\MP3.java:5: error: package javazoom.jl.player does not exist
import javazoom.jl.player.Player;
                         ^
.\Javafiles\MID.java:5: error: package javazoom.jl.player does not exist
import javazoom.jl.player.Player;
                         ^
.\Javafiles\MP3.java:20: error: cannot find symbol
        player.close();
              ^
  symbol:   method close()
  location: variable player of type Player
.\Javafiles\MP3.java:32: error: constructor Player in class Player cannot be app
lied to given types;
            player = new Player(bis);
                     ^
  required: no arguments
  found: BufferedInputStream
  reason: actual and formal argument lists differ in length
.\Javafiles\MP3.java:42: error: cannot find symbol
                try { player.play(); }
                            ^
  symbol:   method play()
  location: variable player of type Player
.\Javafiles\MID.java:18: error: cannot find symbol
    public void close() { if (player != null) player.close(); }
                                                    ^
  symbol:   method close()
  location: variable player of type Player
.\Javafiles\MID.java:27: error: constructor Player in class Player cannot be app
lied to given types;
            player = new Player(bis);
                     ^
  required: no arguments
  found: BufferedInputStream
  reason: actual and formal argument lists differ in length
.\Javafiles\MID.java:37: error: cannot find symbol
                try { player.play(); }
                            ^
  symbol:   method play()
  location: variable player of type Player
Note: .\Javafiles\client.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
8 errors
Press any key to continue . . .

1 个答案:

答案 0 :(得分:0)

编译器抱怨它无法在类路径中找到所需的类javazoom.jl.player.Player必须在两台不同的机器上编译应用程序的方式不同。

不要查看不同的操作系统或Java SDK版本。检查构建过程。验证两台计算机上是否都有所需的库,并且类路径指向该jar文件。

进一步阅读