[JAVA] Mecab-Installation, die fast durch Eingabe eines Befehls erfolgen kann

Ich habe es geschrieben, weil ich süchtig danach war. Es liegt hauptsächlich an "System.loadLibrary" ...

Umgebung

macOS High Sierra

herunterladen

http://taku910.github.io/mecab/#download

Einbau des Hauptkörpers

$ tar zxfv mecab-0.996.tar.gz

$ cd mecab-0.996

$ ./configure $ make $ make check $ sudo make install

Installation von Wörterbüchern

$ cd ../ $ tar zxfv mecab-ipadic-2.7.0-20070801.tar.gz $ cd mecab-ipadic-2.7.0-20070801

$ ./configure --with-charset=utf8 --enable-utf8-only $ make $ make install

(* Es gibt einige Artikel, die die Einstellungsdatei manuell wechseln, dies ist jedoch nicht erforderlich.) (Wenn Sie die Option --with-charset = utf8 --enable-utf8-only auf den Befehl configure setzen, wird der Prozess zum Konvertieren der Codierung der Wörterbuchdatei von EUC nach UTF-8 ausgeführt. Zu diesem Zeitpunkt wird UTF-8 manuell ausgeführt. Wenn Sie zu wechseln, ist die Codierung der Originaldatei nicht EUC, daher schlägt sie mit einem Fehler fehl.)

Wenn die Einstellungen falsch sind, tritt der folgende Fehler auf.

iconv conversion failed. skip this entry:... 

Bestätigung

$ mecab
Guten Morgen
Guten Morgen Eindruck Verb,*,*,*,*,*,Guten Morgen,Ohayou,Ohayo
Ja Hilfsverb,*,*,*,5. Dan / La Line Special,Kontinuierlicher Typ,Gozaru,Gozai,Gozai
Masu Hilfsverb,*,*,*,Spezial / Masse,Grundform,Masu,Forelle,Forelle
EOS

(* Geben Sie in der zweiten Zeile selbst "Guten Morgen" ein.)

Installieren Sie die neueste Version von JDK

Java SE Development Kit 9 Downloads (* Bitte suchen Sie die neueste Version und laden Sie sie herunter.) (* 8 funktioniert möglicherweise nicht)

Bindung an Java

$ cd ../ $ tar zxfv mecab-java-0.996.tar.gz $ cd mecab-java-0.996

$ vi Makefile

INCLUDE=/usr/lib/jvm/java-6-openjdk/include ↓ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/JavaVM.framework/Versions/A/Headers

(* Ein Fehler ist aufgetreten, als der folgende Ordner angegeben wurde) INCLUDE=/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/include

$ sudo make
Password:
c++ -O3 -c -fpic MeCab_wrap.cxx  `mecab-config --cflags` -I/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/include/linux
In file included from MeCab_wrap.cxx:159:
/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/include/jni.h:45:10: fatal error: 
      'jni_md.h' file not found
#include "jni_md.h"
         ^~~~~~~~~~
1 error generated.
make: *** [all] Error 1

$ make

(Es werden viele Warnungen ausgegeben, aber es ist in Ordnung, wenn zwei Dateien, "MeCab.jar" und "libMeCab.so", generiert werden.)

$ javac -cp MeCab.jar test.java
test.java:7:Error:Beim Schreiben des Tests ist ein Fehler aufgetreten: /usr/local/lib/mecab-java/test.class
public class test {
       ^
1 Fehler

Ordner umbenennen

Benennen Sie den Ordner um und verschieben Sie ihn, um die Verwaltung zu vereinfachen.

$ cd ../ $ mv mecab-java-0.996 mecab-java $ mv mecab-java /usr/local/lib/mecab-java

Änderungen, die vorgenommen werden müssen, um das Überprüfungsprogramm auszuführen

Das Bestätigungsprogramm test.java wurde behoben (loadLibrary hat MeCab in meiner Umgebung nicht gut geladen ...) System.loadLibrary("MeCab"); ↓ System.load("/usr/local/lib/mecab-java/libMeCab.so");

$ sudo javac -cp MeCab.jar test.java $ sudo java -cp MeCab.jar:. test


bash-3.2$ java -cp MeCab.jar:. test
0.996
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

	BOS/EOS,*,*,*,*,*,*,*,*
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
	BOS/EOS,*,*,*,*,*,*,*,*
EOS

Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

Taro gab Jiro dieses Buch.
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

	BOS/EOS,*,*,*,*,*,*,*,*
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
	BOS/EOS,*,*,*,*,*,*,*,*
EOS

nbest:0
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:1
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Zwei Nomenklaturen,Nummer,*,*,*,*,zwei,D.,D.
Ro Substantiv,Allgemeines,*,*,*,*,Ro,Rowe,Niedrig
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:2
Taro Substantiv,Proprietäre Nomenklatur,Bereich,Allgemeines,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:3
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Allgemeines,*,*,*,Jiro,Niro,Niro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:4
Taro Substantiv,Proprietäre Nomenklatur,Bereich,Allgemeines,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Zwei Nomenklaturen,Nummer,*,*,*,*,zwei,D.,D.
Ro Substantiv,Allgemeines,*,*,*,*,Ro,Rowe,Niedrig
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:5
Taro Substantiv,Proprietäre Nomenklatur,Bereich,Allgemeines,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Allgemeines,*,*,*,Jiro,Niro,Niro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:6
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Zwei Nomenklaturen,Nummer,*,*,*,*,zwei,D.,D.
Ro Substantiv,Allgemeines,*,*,*,*,Ro,Rowe,Niedrig
Hilfs,Adjunct,*,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:7
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Niro,Niro
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:8
Taro Substantiv,Proprietäre Nomenklatur,Name der Person,Name,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Jiro Nomen,Proprietäre Nomenklatur,Name der Person,Name,*,*,Jiro,Jiro,Jiro
Hilfs,Adjunct,*,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

nbest:9
Taro Substantiv,Proprietäre Nomenklatur,Bereich,Allgemeines,*,*,Taro,Taro,Taro
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Zwei Nomenklaturen,Nummer,*,*,*,*,zwei,D.,D.
Ro Substantiv,Allgemeines,*,*,*,*,Ro,Rowe,Niedrig
Hilfs,Adjunct,*,*,*,*,Zu,D.,D.
Dieser Zusatz,*,*,*,*,*,Dies,Dies,Dies
Diese Nomenklatur,Allgemeines,*,*,*,*,Buch,Hong,Hong
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,Wo,Wo
Verb übergeben,Unabhängigkeit,*,*,Godan / Sa Linie,Kontinuierlicher Typ,aushändigen,ich,ich
Hilfsverb,*,*,*,Besondere,Grundform,Ta,Ta,Ta
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

Recommended Posts

Mecab-Installation, die fast durch Eingabe eines Befehls erfolgen kann
Objektorientiert, das von Feen verstanden werden kann
Schreiben einer Klasse, die in Java bestellt werden kann Ein kleines Standard-Memo
Ich habe ein Rätsel ausprobiert, das nur von den unteren 10% der schlechten Ingenieure gelöst werden kann
Erstellen Sie ein Seitensteuerelement, das mit RecyclerView verwendet werden kann
Erstellen Sie eine JAR-Datei, die auf Gradle ausgeführt werden kann
Suchen Sie eine Switch-Anweisung, die in einen Switch-Ausdruck konvertiert werden kann
So erstellen Sie ein Schlüsselpaar von ecdsa in einem Format, das von Java gelesen werden kann
Einstellungen, die beim Betrieb einer Produktionsumgebung mit Rails vorgenommen werden sollten