Skip to content

1. 설치 (Installation)

Bugeun Kim edited this page Nov 27, 2018 · 6 revisions

여기에 수록된 사용법(1~3절)은 모두 1.x 버전의 사용법입니다. 최신 버전의 사용법은 Usage를 참고하십시오.

Packages

각 형태소 분석기는 별도의 패키지로 Maven Central에 등재되어 있습니다.

패키지명 버전 Java Scala 설명
koalanlp-core Version 8+ 2.10+ 통합 인터페이스의 정의가 등재된 중심 묶음입니다.
koalanlp-hannanum Version 8+ 2.11+ 한나눔 분석기 패키지입니다. 2
koalanlp-kkma Version 8+ 2.10+ 꼬꼬마 분석기 패키지입니다. 2
koalanlp-komoran Version 8+ 2.11+ 코모란 분석기 패키지입니다.
koalanlp-twitter Version 8+ 2.12+3 트위터(OpenKoreanText) 분석기 패키지입니다.
koalanlp-eunjeon Version 8+ 2.11+ 은전한닢 분석기 패키지입니다.
koalanlp-arirang Version 8+ 2.11+ 아리랑 분석기 패키지입니다.2
koalanlp-kryo Version 8+ 2.10+ Kryo Serialization을 지원하기 위한 패키지입니다.
koalanlp-server Version 8+ 2.10 - 2.113 HTTP 서비스 구성을 위한 패키지입니다.
koalanlp-rhino Version 8+ 2.11+ 라이노 분석기 패키지입니다.2

주2 꼬꼬마, 한나눔, 아리랑, 라이노 분석기는 타 분석기와 달리 Maven repository에 등재되어 있지 않아, 원래는 수동으로 직접 추가하셔야 합니다. 이 점이 불편하다는 것을 알기에, KoalaNLP는 assembly 형태로 해당 패키지를 포함하여 배포하고 있습니다. 포함된 패키지를 사용하려면, assembly classifier를 사용하십시오. "assembly" classifier가 지정되지 않으면, 각 분석기 라이브러리가 빠진 채로 dependency가 참조됩니다.

  • 코모란 분석기는 KoalaNLP v1.6.0부터 Jitpack에 등재된 코모란 3.2를 Dependency 참조합니다. 따라서 "assembly" classifier는 v1.5.4까지 지원됩니다.

주3 의존하고 있는 일부 패키지가 Scala 2.10, Java 7을 지원하지 않아, 더 높은 버전만 사용 가능 합니다.

Dependency 추가하기

KoalaNLP는 Scala 2.12.1에서 컴파일 되었으며, Scala 2.10+과 Java 8+을 지원합니다.

SBT를 사용하시는 경우, 다음과 같이 추가하시면 됩니다. (버전은 Latest Release 기준입니다. SNAPSHOT을 사용하시려면, latest.integration을 사용하세요.)

libraryDependencies += "kr.bydelta" %% "koalanlp-twitter" % "latest.release"	//트위터 분석기의 경우
libraryDependencies += "kr.bydelta" %% "koalanlp-eunjeon" % "latest.release"	//은전한닢 분석기의 경우
libraryDependencies += "kr.bydelta" %% "koalanlp-komoran" % "latest.release"	//코모란 분석기의 경우

libraryDependencies += "kr.bydelta" %% "koalanlp-kkma" % "latest.release" classifier "assembly"	//꼬꼬마 분석기의 경우
libraryDependencies += "kr.bydelta" %% "koalanlp-hannanum" % "latest.release" classifier "assembly"	//한나눔 분석기의 경우
libraryDependencies += "kr.bydelta" %% "koalanlp-arirang" % "latest.release" classifier "assembly"	//아리랑 분석기의 경우

libraryDependencies += "kr.bydelta" %% "koalanlp-kryo" % "latest.release" // Kryo Serialization
libraryDependencies += "kr.bydelta" %% "koalanlp-server" % "latest.release" // HTTP 서비스

Maven을 사용하시는 경우, 다음과 같습니다. ${TAGGER_PACK}위치에는 원하는 품사분석기의 패키지를 써주시고, ${TAGGER_VER}위치에는 품사분석기의 버전을 써주세요.

<dependency>
  <groupId>kr.bydelta</groupId>
  <artifactId>koalanlp-${TAGGER.PACK}_2.12</artifactId>
  <version>${TAGGER_VER}</version>
</dependency>

[질문] 저는 Java개발자입니다. 왜 패키지명칭에 _2.12가 붙나요?

KoalaNLP가 Scala에서 개발되었기 때문에, 개발 당시 Scala의 버전인 2.12가 뒤에 붙은 것입니다.

Classifier를 추가하실 경우, <artifactId>다음 행에 다음 코드를 추가하세요.

  <classifier>assembly</classifier>

예를 들어서, 꼬꼬마 분석기(koalanlp-kkma) 버전 1.7.0을 추가하고자 한다면, 아래와 같습니다.

<dependency>
  <groupId>kr.bydelta</groupId>
  <artifactId>koalanlp-kkma_2.12</artifactId>
  <classifier>assembly</classifier>
  <version>1.7.0</version>
</dependency>