0

クラスが使用するクラスを含む提供された.jarファイルと一緒にクラスをコンパイルしようとしています。

これは私が試していることです:

javac -classpath .:WordSearch.jar WordSearchSolver.java

そして、これは応答です:

WordSearchSolver.java:16: cannot find symbol
symbol  : class PuzzleWord
location: class WordSearchSolver
    public ArrayList<PuzzleWord> findwords()
                 ^
WordSearchSolver.java:18: cannot find symbol
symbol  : class PuzzleWord
location: class WordSearchSolver
    return new ArrayList<PuzzleWord>();
                         ^

2つのエラー

これは私のクラスです:

import java.util.ArrayList;

public class WordSearchSolver
{
    public WordSearchSolver(int size, char[][] puzzleboard, ArrayList<String> words)
    {

    }

    public ArrayList<PuzzleWord> findwords()
    {
        return new ArrayList<PuzzleWord>();
    }
}

WordSearch.jarに含まれるもの:

PuzzleUI.class
PuzzleWord$Directions.class
PuzzleWord.class
Natural.class

(WordSearchSolver.javaとWordsearch.jarは同じディレクトリにあります)

私は何かが足りないのですか?

4

3 に答える 3

3

Cygwinを使用していますが、Javaコンパイラ/ JVMはWindows環境で実行されるため、パス区切り文字はセミコロンにする必要があると思います。

javac -cp .\;WordSearch.jar ...

Cygwinシェルによる解釈を防ぐためにセミコロンをエスケープする必要があることに注意してください(以下のbkailに感謝します)

于 2009-10-04T22:57:34.740 に答える
1

WordSearch.jarクラス内のクラスからクラスをインポートしていませんWordSearchSolver。パッケージを含め、このクラスの先頭にインポートステートメントが必要です。

于 2009-10-04T23:04:43.117 に答える
0

セミコロンと引用符の組み合わせになりました。

javac -classpath ".;WordSearch.jar" WordSearchSolver.java

私を正しい方向に向けてくれてありがとう!

于 2009-10-05T05:57:20.900 に答える