1

Java で FileIndexer クラスを作成し、Android アプリにインポートしようとしています。ただし、次のエラーが表示されます...

The constructor FileIndexer(File) is not visible

インスタンス化を試みる場所は次のとおりです。

import mpss.categorizer.FileIndexer;
...
try {
        FileIndexer indexer = new FileIndexer(getExternalFilesDir(null));
    } catch (Exception e) {
        Log.w("Indexing", "Error creating FileIndexer: " + e.getMessage());
    }

FileIndexer 内のコンストラクターは次のとおりです。

public class FileIndexer {
    private FSDirectory fsDirectory;
    private ArrayList<File> queue;

    public FileIndexer(File f){
        try {
             fsDirectory = FSDirectory.open(f);
        } catch (IOException e) {
             System.out.println("Invalid location: " + e.getMessage());
        }
    }

FileIndexer の jar を作成し、それを Android ビルドパスに追加しました。また、私のマニフェストには次が含まれます。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

したがって、外部ストレージにアクセスできないわけではありません。なぜこのエラーが発生するのか分かりますか?

4

1 に答える 1

0

パッケージに FileIndexer という名前の同じクラスがありますか?

一度インポートで可視性の問題に遭遇しましたが、これが原因でした。

于 2014-03-24T06:24:23.413 に答える