Apache Lucene.NET es una biblioteca de búsqueda de texto completo de código abierto escrita en C#. Es una adaptación del popular proyecto Java Apache Lucene.
Apache Lucene.NET es una biblioteca .NET que proporciona potentes funciones de búsqueda e indexación, así como corrección ortográfica, resaltado de visitas y capacidades avanzadas de análisis/tokenización.
Lucene.NET versión 4.8 (aún en Beta) se ejecuta en todos los lugares donde se ejecuta .NET, incluidos Windows, Unix, MacOS, Android e iOS.
El sitio web de Apache Lucene.NET está en: http://lucenenet.apache.org
Última versión de lanzamiento: Lucene.NET 3.0.3
Trabajando hacia Lucene.NET 4.8.0 (actualmente en BETA)
PM> Install-Package Lucene.Net
PM> Install-Package Lucene.Net -Pre
Disponemos de documentación preliminar para Lucene.NET 4.8.0 en el sitio web de Lucene.NET.
La API es similar a Java Lucene 4.8.0, y también puede resultarle útil revisarla.
NOTA: Estamos trabajando para solucionar problemas con la documentación, pero nos vendría bien más ayuda ya que es un proyecto enorme. Ver #206.
Hay varias demostraciones implementadas como aplicaciones de consola simples que se pueden copiar y pegar en Visual Studio o compilar en la línea de comandos en el proyecto Lucene.Net.Demo.
También hay una herramienta de línea de comandos dotnet disponible en NuGet. Contiene todas las demostraciones, así como herramientas que mantienen su índice Lucene.NET, con operaciones como dividir, fusionar, enumerar información de segmentos, corregir, eliminar segmentos, actualizar, etc. Asegúrese siempre de hacer una copia de seguridad de su índice antes de ejecutar cualquier comando. ¡en contra!
dotnet tool install lucene-cli -g --version 4.8.0-beta00015
NOTA: La versión de la CLI que instale debe coincidir con la versión de Lucene.NET que utilice.
Una vez instalado, puede explorar los comandos y opciones que están disponibles ingresando el comando lucene
.
Documentación de lucene-cli
¡Nos encanta recibir contribuciones! Lea nuestra Guía de contribuciones o siga leyendo para descubrir formas en las que puede ayudar.
Cómo unirse a listas de correo
Si tiene una pregunta general sobre cómo hacerlo o necesita ayuda de la comunidad Lucene.NET, suscríbase a la lista de correo user
enviando un correo electrónico a [email protected] y luego siga las instrucciones para verificar su dirección de correo electrónico. . Tenga en cuenta que solo necesita suscribirse una vez.
Después de suscribirse a la lista de correo, envíe su mensaje por correo electrónico a [email protected].
Alternativamente, puede obtener ayuda a través de la comunidad activa de StackOverflow.
No envíe preguntas prácticas generales a GitHub; utilice GitHub únicamente para informes de errores y tareas.
Para informar un error, utilice el rastreador de problemas de GitHub.
NOTA: En el pasado, el proyecto Lucene.NET utilizaba el rastreador de problemas JIRA, que ahora ha quedado obsoleto. Sin embargo, lo mantenemos activo para realizar un seguimiento de los problemas heredados. Envíe cualquier problema nuevo a GitHub.
Para iniciar una discusión de desarrollo sobre las características técnicas de Lucene.NET, envíe un correo electrónico a la lista de correo dev
a [email protected] y luego siga las instrucciones para verificar su dirección de correo electrónico. Tenga en cuenta que solo necesita suscribirse una vez.
Después de suscribirse a la lista de correo, envíe su mensaje por correo electrónico a [email protected].
Antes de comenzar a trabajar en una solicitud de extracción, lea nuestra guía de contribución.
NOTA: Si el proyecto está abierto en Visual Studio, su restauración en segundo plano puede interferir con estos comandos. Se recomienda cerrar todas las instancias de Visual Studio que tengan
Lucene.Net.sln
abierto antes de ejecutar.
Para compilar el código fuente, clone o descargue y descomprima el repositorio. Para versiones específicas, descargue y descomprima el archivo .src.zip
desde la página de descarga de la versión específica. Desde el repositorio o la raíz de distribución, ejecute el comando de compilación desde un símbolo del sistema e incluya las opciones deseadas de la tabla de opciones de compilación a continuación:
> build [options]
./build [options]
NOTA: Será necesario otorgar permiso al archivo
build
para ejecutarlo usando el comandochmod u+x build
antes de la primera ejecución.
Las siguientes opciones no distinguen entre mayúsculas y minúsculas. Cada opción tiene una forma corta indicada por un solo -
y una forma larga indicada por --
. Las opciones que requieren un valor deben ir seguidas de un espacio y luego del valor, similar a ejecutar la CLI de dotnet.
Corto | Largo | Descripción | Ejemplo |
---|---|---|---|
-config | --configuración | La configuración de compilación ("Versión" o "Depuración"). | construir-‑configuración Depurar |
-mp | ‑‑trabajos-paralelos-máximo | El número máximo de trabajos paralelos que se ejecutarán durante la prueba. Si no se proporciona, el valor predeterminado es 8. | construir -t -mp 10 |
-pv | ‑‑versión-paquete | La versión del paquete NuGet. Si no se proporciona, utilizará la versión del archivo Version.proj. | compilación-pv 4.8.0-beta00001 |
-t | --prueba | Ejecuta las pruebas después de la construcción. Esta opción no requiere un valor. Tenga en cuenta que las pruebas suelen tardar unos 40 minutos con 8 trabajos paralelos. | construir -t |
-fv | ‑‑versión-archivo | La versión del archivo ensamblado. Si no se proporciona, el valor predeterminado es --package-version (excluyendo cualquier etiqueta de prelanzamiento). La versión ensamblada se derivará del componente de la versión principal del valor pasado, excluyendo los componentes menores, de compilación y de revisión. | compilación-pv 4.8.0-beta00001-fv 4.8.0 |
Por ejemplo, el siguiente comando crea una compilación de lanzamiento con la versión 4.8.0‑ci00015 del paquete NuGet y la versión 4.8.0 del archivo. La versión ensamblada se derivará del componente de versión principal del valor pasado, excluyendo los componentes menores, de compilación y de revisión (en este caso 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
En el ejemplo anterior, utilizamos "ci" en la versión del paquete para indicar que no se trata de una versión beta publicada públicamente, sino más bien del resultado de una compilación de integración continua desde master que ocurrió después de beta00014 pero antes de que se lanzara beta00015.
La compilación envía los paquetes NuGet al directorio /_artifacts/NuGetPackages/
. Los resultados de la prueba (si corresponde) se envían al directorio /_artifacts/TestResults/
.
Puede configurar Visual Studio para leer los paquetes NuGet como cualquier fuente NuGet siguiendo estos pasos:
+
(para agregar)Lucene.Net Local Packages
...
junto al campo Fuente y elija la carpeta /src/_artifacts/NuGetPackages
en su sistema local. Luego, todo lo que necesita hacer es elegir la fuente Lucene.Net Local Packages
en el menú desplegable (en el Administrador de paquetes NuGet) y podrá buscar, instalar y actualizar los paquetes NuGet tal como puede hacerlo con cualquier fuente basada en Internet.
Lucene.Net.sln
en Visual Studio..build/TestTargetFramework.props
y descomentando el <TargetFramework>
correspondiente (y comentando todos los demás).NOTA: Al ejecutar pruebas en Visual Studio, asegúrese de configurar la arquitectura del procesador predeterminada en 64 bits para evitar quedarse sin memoria virtual en algunas pruebas.
Hemos configurado nuestro archivo azure-pipelines.yml
con valores predeterminados lógicos para que cualquier persona con una cuenta de Azure DevOps pueda crear Lucene.NET y ejecutar las pruebas con el mínimo esfuerzo. Incluso una cuenta gratuita de Azure DevOps funcionará, pero las pruebas se ejecutarán mucho más rápido si la cuenta está configurada como pública, lo que permite ejecutar hasta 10 trabajos paralelos simultáneamente.
azure-pipelines.yml
. Hay documentación cerca de la parte superior del archivo que indica las variables que se pueden configurar para habilitar opciones adicionales, pero tenga en cuenta que la configuración predeterminada ejecutará automáticamente la compilación y todas las pruebas. Tenga en cuenta que una vez completada la compilación, el artefacto nuget
contiene archivos .nupkg
que pueden descargarse en su máquina local, donde puede configurar una carpeta local para que actúe como fuente NuGet.
También es posible agregar una identificación de fuente de Azure DevOps a una nueva variable denominada
ArtifactFeedID
, pero obtenemos resultados mixtos debido a problemas de permisos.