2012-01-29 17 views
0

私はこの次をインポートしています:JavaプログラムでJavaライブラリクラスが認識されませんか?

import org.apache.lucene.analysis.PorterStemmer 

。パッケージ全体は、refrencedライブラリで利用できます。

は、私は両方の最初のものを除いて細かいが は、誰が、なぜ指摘することができ言及作業している

import org.apache.lucene.analysis.PorterStemFilter 

import org.apache.lucene.analysis.Analyzer; 

をインポートしようとしました?!

+0

あなたが探しているクラスがロードされたjarファイルの中にあることを確認できますか? "jar -tvf mylibrary.jar"を見てそこにあるかどうか確認してみてください。 –

答えて

5

パッケージorg.apache.lucene.analysis.PorterStemmerはパブリックパッケージではないため、インポートできません。ライブラリ内のこのパッケージを見ると、public class PorterStemmerの代わりにclass PorterStemmerで始まることがわかります。

+0

ああそうですね...プライベート – Chinmay

+2

プライベートではありません。 .itにはデフォルトのアクセス権があります。ネストされたプライベートクラスのみを持つことができます – naresh

2

私の推測では、動作していないクラスを含んでいない別のバージョンのLucene JARがあります。 WinZip、7Zip、またはその他のツールを使用してJARを開き、そのクラスが実際にはないかどうかを確認します。そうであれば、それを持っているJARのバージョンを見つけるか、代替コードを使うようにコードを書き直す必要があります。

+0

私はlucene-3.4.0 2/lucene-core-3.4.0.jarを持っていて、このパッケージのPorterStemmer.classクラスを見ることができます – Chinmay

+0

エラーで「クラスが解決できない」とは言わない "import org.apache.lucene.analysis.PorterStemmerは表示されません " – Chinmay

+2

非公開のクラスですか? –

関連する問題