Menu

Servidor de Búsqueda de Texto Completo de Código Abierto - Guía de Desarrollo de Fess

Esta guía proporciona la información necesaria para participar en el desarrollo de Fess. Está dirigida a una amplia audiencia, desde aquellos que están abordando el desarrollo de Fess por primera vez hasta desarrolladores experimentados.

Audiencia Objetivo

Esta guía está dirigida a las siguientes personas:

  • Desarrolladores que desean contribuir con nuevas funciones o mejoras a Fess

  • Ingenieros que desean comprender el código de Fess

  • Personas que desean personalizar y usar Fess

  • Personas interesadas en participar en proyectos de código abierto

Conocimientos Previos Necesarios

Para participar en el desarrollo de Fess, los siguientes conocimientos son útiles:

Obligatorio

  • Conocimientos básicos de programación en Java (Java 21 o posterior)

  • Uso básico de Git y GitHub

  • Uso básico de Maven

Recomendado

  • Conocimiento del framework LastaFlute

  • Conocimiento de DBFlute

  • Conocimiento de OpenSearch/Elasticsearch

  • Experiencia en desarrollo de aplicaciones web

Estructura de la Guía de Desarrollo

Esta guía consta de las siguientes secciones.

Servidor de Búsqueda de Texto Completo de Código Abierto - Visión General del Desarrollo de Fess

Explica una visión general del desarrollo de Fess y los primeros pasos para comenzar el desarrollo. Puede comprender la pila de tecnología necesaria para el desarrollo y la visión general del proyecto.

Configuración del Entorno de Desarrollo

Explica en detalle el procedimiento de configuración del entorno de desarrollo. Desde la instalación de las herramientas necesarias como Java, IDE, OpenSearch, hasta la obtención y ejecución del código fuente de Fess, se explica paso a paso.

Arquitectura y Estructura del Código

Explica la arquitectura y la estructura del código de Fess. Al comprender los paquetes principales, módulos y patrones de diseño, puede proceder con el desarrollo de manera eficiente.

Flujo de Trabajo de Desarrollo

Explica el flujo de trabajo estándar del desarrollo de Fess. Puede aprender cómo proceder con el trabajo de desarrollo, como agregar funciones, corregir errores, revisión de código y pruebas.

Construcción y Pruebas

Explica cómo construir y probar Fess. Explica el uso de herramientas de construcción, la ejecución de pruebas unitarias, y cómo crear paquetes de distribución.

Guía de Contribución

Explica cómo contribuir al proyecto Fess. Puede aprender sobre la creación de pull requests, convenciones de codificación, y métodos de comunicación con la comunidad.

Inicio Rápido

Si desea comenzar a desarrollar Fess de inmediato, siga estos pasos:

  1. Verificación de Requisitos del Sistema

    Para el desarrollo, se necesitan las siguientes herramientas:

    • Java 21 o posterior

    • Maven 3.x o posterior

    • Git

    • IDE (Eclipse, IntelliJ IDEA, etc.)

  2. Obtención del Código Fuente

    git clone https://github.com/codelibs/fess.git
    cd fess
    
  3. Descarga de Plugins de OpenSearch

    mvn antrun:run
    
  4. Ejecución

    Ejecute org.codelibs.fess.FessBoot desde el IDE, o ejecútelo desde Maven:

    mvn compile exec:java
    

Consulte Configuración del Entorno de Desarrollo para más detalles.

Opciones de Entorno de Desarrollo

El desarrollo de Fess se puede realizar en cualquiera de los siguientes entornos:

Entorno de Desarrollo Local

Este es el entorno de desarrollo más común. Instale las herramientas de desarrollo en su propia máquina, y desarrolle usando un IDE.

Ventajas:

  • Construcción y ejecución rápidas

  • Puede aprovechar al máximo las funciones del IDE

  • Puede trabajar sin conexión

Desventajas:

  • La configuración inicial lleva tiempo

  • Pueden ocurrir problemas debido a diferencias en el entorno

Entorno de Desarrollo con Docker

Puede construir un entorno de desarrollo consistente usando contenedores Docker.

Ventajas:

  • Se mantiene la consistencia del entorno

  • Configuración fácil

  • Fácil de volver a un estado limpio

Desventajas:

  • Se requiere conocimiento de Docker

  • El rendimiento puede disminuir en algunos casos

Consulte Configuración del Entorno de Desarrollo para más detalles.

Preguntas Frecuentes

P: ¿Cuáles son las especificaciones mínimas necesarias para el desarrollo?

R: Se recomienda lo siguiente:

  • CPU: 4 núcleos o más

  • Memoria: 8GB o más

  • Disco: 20GB o más de espacio libre

P: ¿Qué IDE debo usar?

R: Puede usar su IDE favorito, como Eclipse, IntelliJ IDEA, VS Code, etc. Esta guía explica principalmente usando Eclipse como ejemplo, pero puede desarrollar de manera similar con otros IDEs.

P: ¿Es obligatorio el conocimiento de LastaFlute o DBFlute?

R: No es obligatorio, pero facilita el desarrollo si lo tiene. Aunque esta guía también explica el uso básico, consulte la documentación oficial de cada framework para más detalles.

P: ¿Por dónde debo empezar mi primera contribución?

R: Se recomienda comenzar con trabajos relativamente fáciles como:

  • Mejora de la documentación

  • Adición de pruebas

  • Corrección de errores

  • Pequeñas mejoras a las funciones existentes

Consulte Guía de Contribución para más detalles.

Recursos Relacionados

Recursos Oficiales

Documentación Técnica

Comunidad

Próximos Pasos

Para comenzar el desarrollo, se recomienda comenzar leyendo Servidor de Búsqueda de Texto Completo de Código Abierto - Visión General del Desarrollo de Fess.

Índice: