运行Java程序

运行Java程序,java,Java,我看了其他一些SO问题,没有发现任何解决我问题的方法。。。我有一个Main.java文件(如下)和一个没有关联源文件的OthelloLib.jar文件 运行javac Main.java失败,因为您运行 Main.java:8: cannot find symbol symbol : class SimplePlayer location: class Main OthelloPlayer p1 = new SimplePlayer(); javac -classpath .:

我看了其他一些SO问题,没有发现任何解决我问题的方法。。。我有一个Main.java文件(如下)和一个没有关联源文件的OthelloLib.jar文件

运行
javac Main.java
失败,因为您运行

Main.java:8: cannot find symbol symbol : class SimplePlayer location: class Main OthelloPlayer p1 = new SimplePlayer();
javac -classpath .:OthelloLib.jar Main.java
那么编译

java -classpath .:OthelloLib.jar Main
在每种情况下,
-classpath.:OthelloLib.jar
选项告诉Java在哪里可以找到
SimplePlayer
和您需要的其他类;它不知道如何单独查看JAR文件。您确实需要告诉编译器和虚拟机在哪里查找这些类


编辑:看起来你添加了一些关于
TimeoutException
的内容,因为我写了这个。。。您是否记得编译
TimeoutException.java
TimeoutException.class
文件是否与
Main.class
在同一目录下?

调用程序时是否指定了类路径

类似以下的方法可能会起作用:

java -cp .:OthelloLib.jar Main

注意:通过将库添加到项目中,您可以在eclipse或netbeans等优秀IDE中完成所有这一切。其余的将自动处理。

您是否设置了对OthelloLib.jar的引用或以库作为参数调用javacompiler

java -classpath .:OthelloLib.jar -g Main

你导入了所有的库吗


我试过第二个命令。。。java抱怨一个不同的问题。。。似乎它发现了埋在罐子里的类。啊。。。是的,在这个阶段,我建议使用文本编辑器和命令行。一旦理解了这个过程,就回到Eclipse。
public Main(){}
不是必需的。并不是每个类都需要构造函数,而且因为它什么都不做,所以它只是把你的代码弄乱了。几年前的一个类遗留代码。我很高兴java不需要这样做。:)
java -classpath .:OthelloLib.jar -g Main
import a.b.c. OthelloPlayer;