2週間の調査の後、私はまだsolrを使用して同じ問題を抱えています.
マイ ドキュメント コレクション : 3588 ドキュメント
材料 :
マイ コンピュータ : Intel(R) Core(TM)2 Duo CPU 3GHz、RAM : 4Go、オペレーティング システム 64 ビット : Windows 7 Professional。
仮想マシン (VM) : 8 CPU RAM : 16 Go Linux
VM 上のソフトウェア:
- 1 Solrのインスタンス
- 桟橋
- javaバージョン「1.7.0_09-icedtea」
私のコンピュータ上のソフトウェア:
- エクリプス
- Java バージョン「1.7.0_15」
Eclipse で Solrj のクラスを使用してプログラムを実装し、ドキュメント コレクションを動的に (動的に) インデックス付けしました。VM の IP アドレスを使用してコンピューターでこのプログラムを実行すると、コレクションのインデックスが適切に作成されます (すべてのドキュメントのインデックスが作成されます)。しかし、VM でプログラムの jar ファイルを実行すると、インデックス作成中に問題が発生し、すべてのファイルにインデックスが作成されません。
BufferedReader クラスを使用してファイルを読み取ります。
そのため、すべてのドキュメントを静的な方法で作成して、BufferedReader を開かないようにし、ドキュメントを解析しないようにテストしました。そして、私のドキュメントはすべて索引付けされています。
では、Java Class を使用すると機能しないのはなぜでしょうか?
STATIC と DYNAMIC の方法で使用するさまざまなクラスは次のとおりです。
- BufferedReader : コンストラクター、readline() および close()
- 文字列 : replaceAll()、split()
- 整数 : valueOf
- ファイル: getName()
これらのクラスを使用するときに、両方の Java バージョンにプロセスの違いがある可能性はありますか?
さらに、Linux と Windows では、ファイルの操作方法にいくつかの違いがあると聞きました。そうですか?
手伝ってくれてありがとう。
コランタン
ps : この問題に関連する別の投稿を見つけました: ConcurrentUpdateSolrServer クラスの奇妙な動作 この新しい投稿を書いているのは、他の投稿が少し長いためです ...