JAWSを使用するには、アプリケーション内のWordNetデータベースディレクトリの指定がここに記載されているように必要です:http://lyle.smu.edu/~tspell/jaws/。WordNetデータベースディレクトリ.jarの相対パス
System.setProperty("wordnet.database.dir", "resources/WordNet-3.0/dict/");
これはIDE内でうまくいきます。しかし、.jarファイルにはコンパイルされません。したがって、.jarファイル内のWordNetディレクトリの相対パスが必要です。すでにさまざまなアプローチを試みました。最後は次のとおりです。
のjar::ファイル:/ C:.jarファイルからテストした結果としてあり
String url = this.getClass().getClassLoader()
.getResource("resources/WordNet-3.0/dict/index.sense").toExternalForm();
url = url.substring(0, url.length() - 12);
!/file/path/jar.jar /resources/WordNet-3.0/dict/
これは解決策ですが、.jarが実行されてもディレクトリまたはindex.senseが見つからない場合があります。 index.senseはロードされると想定されます。
WordNetDatabase database = WordNetDatabase.getFileInstance();
指定されたディレクトリを使用します。いくつかの糸が見つかりましたが、働いている人の提案はありません。たとえば、次のように
How to get the path of a running JAR file? How to get a path to a resource in a Java JAR file Loading a file relative to the executing jar file
こんにちは、同じ問題に直面しています。解決策を投稿したり、解決策を洗い出したりすることで助けてください。前もって感謝します。 – Ajaykumar