2

この質問はすでにStack Overflow で質問されていますが、提供された回答を読んだ後でも、 Luke から直接使用できるように MyOwnAnalyzer を追加できませ

MyOwnAnalyzerを Luke から直接使用できるようにするための正しい方法を教えてください。

これを行うことはできますか (機能しませんでした。含まれている jar が不完全な可能性がありますか?):

java -cp .;d:\java\mylibs\MyOwnAnalyzer.jar -jar lukeall-3.5.0.jar

( MyOwnAnalyzer.jarは Eclipse から構築され、サブディレクトリcom.MyCompany内にMyOwnAnalyzer.java、MyOwnTokenizer.java、および MyOwnToken.javaが含まれています ... Eclipse はMETA-INFmanifest.mfを追加しました)

コマンドラインでクラスパスと MyOwnAnalyzer.jar を追加するのが間違っているのでしょうか?

または、ディレクトリのどこかに MyOwnAnalyzer を含むソースから Luke をビルドする必要がありますか?

または、アナライザーを使用して Luke からインポートできるように、他に含める/書く必要があるものはありますか? (アナライザーをサブクラス化するすべてのクラスを検出するメカニズムがあるようです - MyOwnAnalyzer は既に " extends Analyzer" として宣言されています)

ところで、実際には同じ質問ではなく、Luke のカスタム アナライザーを使用するという同じトピックであっても... si タブのアナライザー ツールを使用するとエラーが発生しますError analyzing:com/google/common/io/CharStreams。このライブラリは jar に含まれています。サンプル分析を実行してチェックするメインが含まれており、単独で使用するとすべてが正常に機能します。JPountz さんの説明どおりに使用すると、Luke から、Luke のすべてのタブから MyOwnAnalyzer が表示されるのですが、うまくいきませんでした。

Luke のコード ソースから、これが例外をスローするのは、 analyzeメソッド内のどこかにあると思います。

注: への呼び出しは、入力を 内の文字列CharStreams.toString(input);に変換することです。ReaderMyOwnTokenizer

4

1 に答える 1

4

-jar オプションも使用されている場合、Java は -cp オプションを無視します。この方法で Luke を実行する必要があります。

java -cp lukeall-3.5.0.jar;MyOwnAnalyzer.jar org.getopt.luke.Luke
于 2012-06-25T21:45:44.250 に答える