shineware / KOMORAN

Korean Morphological Analyzer by shineware
Apache License 2.0
286 stars 63 forks source link

Class 초기화 오류 #134

Closed j7soft closed 1 year ago

j7soft commented 2 years ago

문제 설명

무엇이, 어떻게 문제인가요? 안드로이드 스튜디오에서 앱을 개발하고 있습니다. 설명해 주신대로 간단한 테스트를 위해 아래와 같이 Komoran 클래스를 초기화하려는데 컴파일하면서 enum 변수를 못찾는다고 에러가 뜹니다.

// KOMORAN 형태소분석기 모듈 import kr.co.shineware.nlp.komoran.constant.DEFAULT_MODEL; import kr.co.shineware.nlp.komoran.core.Komoran; import kr.co.shineware.nlp.komoran.model.KomoranResult; import kr.co.shineware.nlp.komoran.model.Token; ...

            Komoran komoran = new Komoran(DEFAULT_MODEL.STABLE);  <=== 여기서 STABLE 또는 EXPERIMENT 로 다 해봐도 안됨
            String strToAnalyze = "대한민국은 민주공화국이다.";

            KomoranResult analyzeResultList = komoran.analyze(strToAnalyze);

            //System.out.println(analyzeResultList.getPlainText());

            List<Token> tokenList = analyzeResultList.getTokenList();
            for (Token token : tokenList) {
                //System.out.format("(%2d, %2d) %s/%s\n", token.getBeginIndex(), token.getEndIndex(), token.getMorph(), token.getPos());
                mTokensTv.append(String.format("(%2d, %2d) %s/%s\n", token.getBeginIndex(), token.getEndIndex(), token.getMorph(), token.getPos()));
            }

=== 컴파일 오류 =========================================== error: cannot find symbol Komoran komoran = new Komoran(DEFAULT_MODEL.EXPERIMENT);

라이브러리는 아래와 같이 Gradle 설정하여 External Libraries에 load된 것 확인함 allprojects { repositories { google() jcenter() maven { url 'https://jitpack.io' } } }

dependencies {

.....

implementation('com.github.shin285:KOMORAN:3.3.4') {
    exclude group: 'com.github.shineware', module: 'commons'
    exclude group: 'com.github.shineware', module: 'aho-corasick'
}

}

환경 정보

어떤 환경에서 이 문제가 발생하였나요?

추가 정보

스크린샷이나 에러 로그 등, 추가 정보가 있다면 남겨주세요. image

j7soft commented 2 years ago

개발 환경에서 추천하는 대로 선택가능한 값 중에 FULL 또는 LIGHT가 있길래 LIGHT를 선택했더니 컴파일이 잘 됐습니다. 즉 Komoran(DEFAULT_MODEL.LIGHT) 로 하였더니 됩니다. 문서가 업데이트가 안된 건지 어떤 건지 정확한 원인은 모르겠습니다. 답변 주시면 감사하겠습니다.

gamamoe commented 2 years ago

@j7soft 안녕하세요, 제보 감사합니다. 현재 latest 기준 코드베이스는 문서의 내용과 동일하게 STABLE 또는 EXPERIMENTAL이 맞는 것으로 보이나 ( link ), 배포된 artifact는 해당 내용이 적용되어 있지 않아서 발생하는 것 같습니다. 문서의 STABLE과 EXPERIMENTAL은 각각 LIGHT, FULL에 대응되니 우선은 IDE에서의 선택 가능한 값으로 사용하시면 될 것 같습니다. 배포된 버전에서의 상수 값이 맞지 않는 문제는 한 번 확인 해봐야할 것 같습니다 @shin285 혹시 확인 가능할까요?

j7soft commented 2 years ago

답변 주셔서 감사합니다. 화면 캡쳐해서 올립니다. image image 계속해서 많은 도움 부탁드립니다

shin285 commented 2 years ago

답변이 늦어서 죄송합니다. 3.3.4 버전에서는 LIGHT, FULL 둘 중에 하나를 사용하셔야 합니다. 최신 버전에서는 LIGHT가 STABLE로 변경되고 FULL이 EXPERIMENTAL로 이름이 변경되었습니다. 문서는 최신 버전을 기준으로 빠른 시일 내에 업데이트하도록 하겠습니다!

gamamoe commented 1 year ago

기존 이슈에서 알려주신 문제에 대해서는 해결된 것으로 보여 본 이슈는 닫습니다 필요하다면 이슈를 다시 열거나, 신규 이슈를 작성해서 주시면 됩니다.