这确实可能是一个非常简单的问题,但我对 Java 完全陌生,不知道如何解决它。
我有一个 stdlib.jar 文件,其中定义了一些像 StdRandom 这样的类,我必须在我的程序中使用它们。我读到,要使用像 stdlib.jar 这样的文件,我必须使用默认包。所以我从下面的程序中删除了“包 algs4”。但它没有用。
package algs4;
public class PercolationStats
{
//Some method declarations
public static void main(String[] args)
{
//Some code
for(int counter=0; counter<T; counter++)
{
while(!p.percolates())
{
iIndex = StdRandom.uniform(N);
jIndex = StdRandom.uniform(N);
...
}
}
}
每次我使用以下方法编译此程序时:
javac -cp . algs4/PercolationStats.java
我得到错误:
algs4/PercolationStats.java:30: cannot find symbol
symbol : variable StdRandom
location: class algs4.PercolationStats
iIndex = StdRandom.uniform(N);
我还尝试使用以下方法进行编译:
javac -cp .:stdlib.jar algs4/PercolationStats.java
但错误仍然相同。
虽然这不是一个好的做法,但我也从 .jar 文件中提取了文件,这给了我 StdRandom.java 文件,但它仍然不起作用。
我所有的文件,包括 stdlib.jar 都在同一个目录中。
我应该怎么做?
编辑:只是为了让问题更加详细,以供将来参考:程序中使用的 stdlib.jar 位于“默认”包中。