2016-06-16 3 views
0

Java 프로젝트에 JWKTL 라이브러리를 설치하려고합니다. JWKTL Getting startedJWKTL - 데이터베이스에 연결할 수 없습니다.

설명 된대로 덤프 파일을 다운로드하고이를 새 디렉토리로 구문 분석했습니다.

내 코드는 다음과 같습니다

package main; 

import java.io.File; 
import java.util.List; 

import de.tudarmstadt.ukp.jwktl.JWKTL; 
import de.tudarmstadt.ukp.jwktl.api.IWiktionaryEdition; 
import de.tudarmstadt.ukp.jwktl.api.IWiktionaryEntry; 
import de.tudarmstadt.ukp.jwktl.api.IWiktionaryPage; 
import de.tudarmstadt.ukp.jwktl.api.IWiktionaryRelation; 
import de.tudarmstadt.ukp.jwktl.api.PartOfSpeech; 
import de.tudarmstadt.ukp.jwktl.api.RelationType; 


public class Main { 

    final static String PATH_TO_DUMP_FILE = "/GetWords/enwiktionary-20160601-pages-articles-multistream.xml"; 
    final static String TARGET_DIRECTORY = "/GetWords/"; 
    final static boolean OVERWRITE_EXISTING_FILES = true; 
    /** 
    * Simple example which parses an English dump file and prints the entries for the word <i>Wiktionary</i> 
    * @param args name of the dump file, output directory for parsed data, ISO language code of the Wiktionary entry language (en/de), boolean value that specifies if existing parsed data should be deleted 
    */ 
     public static void main(String[] args) throws Exception { 
      File dumpFile = new File(PATH_TO_DUMP_FILE); 
       File outputDirectory = new File(TARGET_DIRECTORY); 
       boolean overwriteExisting = OVERWRITE_EXISTING_FILES; 

       JWKTL.parseWiktionaryDump(dumpFile, outputDirectory, overwriteExisting); 

       IWiktionaryEdition wkt = JWKTL.openEdition(TARGET_DIRECTORY); 

       //TODO: Query the data you need. 

       // Close the database connection. 
       wkt.close(); 
} 
} 

하지만 라인 : IWiktionaryEdition wkt = JWKTL.openEdition(TARGET_DIRECTORY); 오류가 발생합니다 : The method openEdition(File) in the type JWKTL is not applicable for the arguments (String), 나는 프로그램을 던졌습니다 java.io.File에

로 dump_file를 입력하려고 할 때 다음 오류 :

Exception in thread "main" de.tudarmstadt.ukp.jwktl.api.WiktionaryException: Unable to establish a db connection 
    at de.tudarmstadt.ukp.jwktl.api.entry.BerkeleyDBWiktionaryEdition.<init>(BerkeleyDBWiktionaryEdition.java:228) 
    at de.tudarmstadt.ukp.jwktl.api.entry.BerkeleyDBWiktionaryEdition.<init>(BerkeleyDBWiktionaryEdition.java:205) 
    at de.tudarmstadt.ukp.jwktl.JWKTL.openEdition(JWKTL.java:98) 
    at de.tudarmstadt.ukp.jwktl.JWKTL.openEdition(JWKTL.java:89) 
    at main.Main.main(Main.java:31) 
Caused by: java.lang.IllegalArgumentException: Malformed \uxxxx encoding. 
    at java.util.Properties.loadConvert(Unknown Source) 
    at java.util.Properties.load0(Unknown Source) 
    at java.util.Properties.load(Unknown Source) 
    at com.sleepycat.je.dbi.DbConfigManager.applyFileConfig(DbConfigManager.java:388) 
    at com.sleepycat.je.Environment.setupHandleConfig(Environment.java:323) 
    at com.sleepycat.je.Environment.<init>(Environment.java:260) 
    at com.sleepycat.je.Environment.<init>(Environment.java:212) 
    at de.tudarmstadt.ukp.jwktl.api.entry.BerkeleyDBWiktionaryEdition.connect(BerkeleyDBWiktionaryEdition.java:241) 
    at de.tudarmstadt.ukp.jwktl.api.entry.BerkeleyDBWiktionaryEdition.<init>(BerkeleyDBWiktionaryEdition.java:224) 
    ... 4 more 

아무도이 문제를 해결하는 방법을 알고 있습니까?

Eclipse Mars에서 Java 8을 사용합니다.

  • jwktl-1.0.1.jar
  • JE-6.4.25.jar
  • 아파치 개미-1.8.2.jar

:

나는이 libs와 설치 고맙습니다!

답변

0

나는 그것은 너무 간단했다 ... 그것을 해결 :

sulution은 다음과 같습니다

File f = new File(TARGET_DIRECTORY); 

IWiktionaryEdition wkt = JWKTL.openEdition(f); 

감사합니다!

관련 문제