# Drools **Repository Path**: mirrors/drools ## Basic Information - **Project Name**: Drools - **Description**: This repository is a fork of apache/incubator-kie-drools. Please use upstream repository for development. - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 15 - **Forks**: 15 - **Created**: 2019-10-22 - **Last Updated**: 2025-09-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README An open source rule engine, [DMN engine](https://kie.apache.org/docs/components/drools/drools_dmn) and complex event processing (CEP) engine for Java™ and the JVM Platform. Drools is a business rule management system with a forward-chaining and backward-chaining inference based rules engine, allowing fast and reliable evaluation of business rules and complex event processing. A rule engine is also a fundamental building block to create an expert system which, in artificial intelligence, is a computer system that emulates the decision-making ability of a human expert. Be sure to check out the Apache KIE project [website](https://kie.apache.org/docs/components/drools/) and [documentation](https://kie.apache.org/docs/documentation/)! Test execution tip ================== Some test are meant to be executed on machine with _en_US_ locale. A specific profile is provided to execute them on machines with different locale, namely `test-en`. There are two ways to activate such profile during maven build: 1. `-Ptest-en` (profile-id based) 2. `-DTestEn` (property based) The following two commands will execute tests on machine with locale different than _en_US_: 1. `make test -Ptest-en` 2. `make test -DTestEn` Troubleshooting ================ If the build fails with `UnmappableCharacterException`, set `-Dfile.encoding=UTF-8` for `MAVEN_OPTS` (not as an argument of `mvn` command). Then run `mvn`. example for Windows: ```shell set MAVEN_OPTS=-Dfile.encoding=UTF-8 mvn clean install ``` Documenting tips ================ UML diagrams have been used for architectural and design documentation. Those diagrams are in ".puml" format and have been created using the [PlantUML](https://plantuml.com/https://plantuml.com/) tool. Plugins exists to use it in different IDE: * [IDEA](https://plugins.jetbrains.com/plugin/7017-plantuml-integration) * [Eclipse](https://marketplace.eclipse.org/content/plantuml-plugin) * [VisualStudio](https://marketplace.visualstudio.com/items?itemName=jebbs.plantuml)