Apache Lucene.NET은 C#으로 작성된 오픈 소스 전체 텍스트 검색 라이브러리입니다. 이는 인기 있는 Java Apache Lucene 프로젝트의 포트입니다.
Apache Lucene.NET은 강력한 인덱싱 및 검색 기능은 물론 맞춤법 검사, 적중 강조 표시 및 고급 분석/토큰화 기능을 제공하는 .NET 라이브러리입니다.
Lucene.NET 버전 4.8(아직 베타 버전)은 Windows, Unix, MacOS, Android 및 iOS를 포함하여 .NET이 실행되는 모든 곳에서 실행됩니다.
Apache Lucene.NET 웹사이트는 http://lucenenet.apache.org입니다.
최신 릴리스 버전: Lucene.NET 3.0.3
Lucene.NET 4.8.0을 향한 작업(현재 베타 버전)
PM> Install-Package Lucene.Net
PM> Install-Package Lucene.Net -Pre
Lucene.NET 웹사이트에 Lucene.NET 4.8.0에 대한 예비 문서가 있습니다.
API는 Java Lucene 4.8.0과 유사하므로 검토해 보는 것도 도움이 될 수 있습니다.
참고: 문서 관련 문제를 해결하기 위해 노력하고 있지만 대규모 프로젝트이므로 더 많은 도움이 필요할 수 있습니다. #206을 참조하세요.
Visual Studio에 복사하여 붙여넣거나 Lucene.Net.Demo 프로젝트의 명령줄에서 컴파일할 수 있는 간단한 콘솔 애플리케이션으로 구현된 여러 가지 데모가 있습니다.
NuGet에서 사용할 수 있는 dotnet 명령줄 도구도 있습니다. 여기에는 모든 데모와 Lucene.NET 인덱스를 유지 관리하는 도구가 포함되어 있으며 분할, 병합, 세그먼트 정보 나열, 수정, 세그먼트 삭제, 업그레이드 등과 같은 작업을 제공합니다. 명령을 실행하기 전에 항상 인덱스를 백업하십시오. 그것에 반대!
dotnet tool install lucene-cli -g --version 4.8.0-beta00015
참고: 설치하는 CLI 버전은 사용하는 Lucene.NET 버전과 일치해야 합니다.
설치한 후에는 lucene
명령을 입력하여 사용 가능한 명령과 옵션을 탐색할 수 있습니다.
Lucene-cli 문서
우리는 기여를 받는 것을 좋아합니다! 기여 가이드를 읽어보거나 도움을 줄 수 있는 방법을 읽어보세요.
메일링 리스트에 가입하는 방법
일반적인 방법에 대한 질문이 있거나 Lucene.NET 커뮤니티의 도움이 필요한 경우 [email protected]로 이메일을 보내 user
메일링 리스트를 구독한 다음 지침에 따라 이메일 주소를 확인하세요. . 구독은 한 번만 하면 됩니다.
메일링 리스트에 가입한 후 [email protected]로 메시지를 이메일로 보내주세요.
또는 StackOverflow의 활성 커뮤니티를 통해 도움을 받을 수도 있습니다.
일반적인 방법 질문을 GitHub에 제출하지 말고, 버그 보고서 및 작업에만 GitHub를 사용하세요.
버그를 보고하려면 GitHub 문제 추적기를 사용하세요.
참고: 과거에는 Lucene.NET 프로젝트에서 JIRA 문제 추적기를 사용했지만 현재는 더 이상 사용되지 않습니다. 그러나 레거시 문제를 추적하기 위해 이를 활성 상태로 유지하고 있습니다. 새로운 문제가 있으면 GitHub에 제출해 주세요.
Lucene.NET의 기술 기능에 관한 개발 토론을 시작하려면 [email protected]로 이메일을 보내 dev
메일링 리스트에 이메일을 보낸 다음 지침에 따라 이메일 주소를 확인하세요. 구독은 한 번만 하면 됩니다.
메일링 리스트에 가입한 후 메시지를 [email protected]로 이메일로 보내세요.
끌어오기 요청 작업을 시작하기 전에 기여 가이드를 읽어보세요.
참고: 프로젝트가 Visual Studio에서 열려 있는 경우 백그라운드 복원으로 인해 이러한 명령이 방해를 받을 수 있습니다. 실행하기 전에
Lucene.Net.sln
열려 있는 Visual Studio의 모든 인스턴스를 닫는 것이 좋습니다.
소스를 빌드하려면 리포지토리를 복제하거나 다운로드하고 압축을 푸세요. 특정 릴리스의 경우 특정 버전의 다운로드 페이지에서 .src.zip
파일을 다운로드하고 압축을 풉니다. 리포지토리 또는 배포 루트의 명령 프롬프트에서 빌드 명령을 실행하고 아래 빌드 옵션 표에서 원하는 옵션을 포함합니다.
> build [options]
./build [options]
참고: 첫 번째 실행 전에
chmod u+x build
명령을 사용하여 실행하려면build
파일에 권한을 부여해야 합니다.
다음 옵션은 대소문자를 구분하지 않습니다. 각 옵션에는 단일 -
로 표시된 짧은 형식과 --
로 표시된 긴 형식이 모두 있습니다. 값이 필요한 옵션 뒤에는 dotnet CLI를 실행하는 것과 유사하게 공백과 값이 와야 합니다.
짧은 | 긴 | 설명 | 예 |
---|---|---|---|
-구성 | --구성 | 빌드 구성("릴리스" 또는 "디버그"). | 빌드 ‑‑구성 디버그 |
-mp | ‑‑최대 병렬 작업 | 테스트 중에 실행할 최대 병렬 작업 수입니다. 제공되지 않은 경우 기본값은 8입니다. | 빌드 ‑t ‑mp 10 |
-pv | ‑‑패키지 버전 | NuGet 패키지 버전입니다. 제공되지 않은 경우 Version.proj 파일의 버전을 사용합니다. | 빌드 ‑pv 4.8.0‑beta00001 |
-티 | --시험 | 빌드 후 테스트를 실행합니다. 이 옵션에는 값이 필요하지 않습니다. 일반적으로 8개의 병렬 작업을 테스트하는 데 약 40분이 소요됩니다. | 빌드 -t |
-fv | ‑‑파일 버전 | 어셈블리 파일 버전입니다. 제공되지 않은 경우 기본값은 --package-version 값입니다(시험판 라벨 제외). 어셈블리 버전은 부, 빌드 및 개정 구성 요소를 제외하고 전달된 값의 주 버전 구성 요소에서 파생됩니다. | 빌드 ‑pv 4.8.0‑beta00001 ‑fv 4.8.0 |
예를 들어 다음 명령은 NuGet 패키지 버전 4.8.0-ci00015 및 파일 버전 4.8.0을 사용하여 릴리스 빌드를 만듭니다. 어셈블리 버전은 부, 빌드 및 개정 구성 요소(이 경우 4.0.0)를 제외하고 전달된 값의 주 버전 구성 요소에서 파생됩니다.
> build ‑‑configuration Release ‑pv 4.8.0‑ci00015 ‑fv 4.8.0
./build ‑‑configuration Release ‑pv 4.8.0‑ci00015 ‑fv 4.8.0
위의 예에서는 패키지 버전에 "ci"를 사용하여 이것이 공개적으로 출시된 베타 버전이 아니라 beta00014 이후부터 beta00015가 출시되기 전에 발생한 마스터의 지속적인 통합 빌드 출력임을 나타냅니다.
NuGet 패키지는 빌드에 의해 /_artifacts/NuGetPackages/
디렉터리로 출력됩니다. 테스트 결과(해당하는 경우)는 /_artifacts/TestResults/
디렉터리에 출력됩니다.
다음 단계에 따라 NuGet 피드처럼 NuGet 패키지를 읽도록 Visual Studio를 설정할 수 있습니다.
+
아이콘을 클릭하세요(추가용).Lucene.Net Local Packages
와 같은 이름을 지정하십시오....
버튼을 클릭하고 로컬 시스템에서 /src/_artifacts/NuGetPackages
폴더를 선택합니다. 그런 다음 드롭다운(NuGet 패키지 관리자)에서 Lucene.Net Local Packages
피드를 선택하기만 하면 인터넷 기반 피드에서와 마찬가지로 NuGet 패키지를 검색, 설치 및 업데이트할 수 있습니다.
Lucene.Net.sln
엽니다..build/TestTargetFramework.props
열고 해당 <TargetFramework>
의 주석 처리를 제거하고 다른 모든 항목에 주석을 달아 테스트할 대상 프레임워크를 선택합니다.참고: Visual Studio에서 테스트를 실행할 때 일부 테스트에서 가상 메모리가 부족해지는 것을 방지하려면 기본 프로세서 아키텍처를 64비트로 설정해야 합니다.
Azure DevOps 계정이 있는 사람이라면 누구나 최소한의 노력으로 Lucene.NET을 빌드하고 테스트를 실행할 수 있도록 azure-pipelines.yml
파일을 논리적 기본값으로 설정했습니다. 무료 Azure DevOps 계정도 작동하지만 계정이 공개로 설정되어 최대 10개의 병렬 작업을 동시에 실행할 수 있으면 테스트가 훨씬 빠르게 실행됩니다.
azure-pipelines.yml
의 내용을 보여주는 "YAML 검토" 페이지가 표시됩니다. 추가 옵션을 활성화하기 위해 설정할 수 있는 변수를 나타내는 문서가 파일 상단 근처에 있지만 기본 구성은 빌드와 모든 테스트를 자동으로 실행한다는 점에 유의하세요. 빌드가 완료된 후 nuget
아티팩트에는 NuGet 피드 역할을 하도록 로컬 폴더를 설정할 수 있는 로컬 컴퓨터에 다운로드할 수 있는 .nupkg
파일이 포함됩니다.
Azure DevOps 피드 ID를
ArtifactFeedID
라는 새 변수에 추가할 수도 있지만 권한 문제로 인해 결과가 혼합됩니다.