agentsclimarketplace

Druid maven build

Skill cxcscmu/SkillLearnBench/skills/b4-skill-creator-claude-sonnet-4-6/fix-security-bug/druid-maven-build

How to build Apache Druid with Maven, including how to skip OOM-prone modules, skip code quality checks for patched files, and build only specific modules. Use this skill when building Druid from source, when rebuilding after applying security patches, or when Maven build fails due to memory or code quality check issues.From its SKILL.md

Install
npx -y skills add cxcscmu/SkillLearnBench --skill druid-maven-build

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

2.0 KB, 422 tokens by cl100k_base, as published. Nobody here has run it

Apache Druid Maven Build

Standard Patch Build Command

When applying security patches (skip tests + code quality checks + web-console to avoid OOM):

cd /root/druid
mvn clean package \
  -DskipTests \
  -Dcheckstyle.skip=true \
  -Dpmd.skip=true \
  -Dforbiddenapis.skip=true \
  -Dspotbugs.skip=true \
  -Danimal.sniffer.skip=true \
  -Denforcer.skip=true \
  -Djacoco.skip=true \
  -Ddependency-check.skip=true \
  -pl '!web-console' \
  -pl indexing-service \
  -am

Key flags:

  • -pl indexing-service -am: Build only indexing-service and all its dependencies (modules it depends on)
  • -pl '!web-console': Exclude web-console (causes OOM during build)
  • -DskipTests: Skip unit tests
  • -Dcheckstyle.skip=true etc.: Skip code quality checks that may fail on patched files

Module Dependency Chain

For a patch affecting indexing-service, these modules are typically rebuilt (via -am):

  • druid-core (contains JavaScriptConfig, JavaScriptParseSpec)
  • druid-processing (contains filters, aggregators, extractors)
  • druid-server (contains JavaScriptTieredBrokerSelectorStrategy)
  • druid-indexing-service (contains SamplerResource, JavaScriptWorkerSelectStrategy)

Output JARs

After build, the patched JARs are in:

  • indexing-service/target/druid-indexing-service-<version>.jar
  • Module JARs in respective target/ directories

Troubleshooting

OOM during build: Add -Xmx4g to MAVEN_OPTS or exclude heavy modules with -pl '!web-console'

Checkstyle failures on patched files: Use -Dcheckstyle.skip=true

ForbiddenApis failures: Use -Dforbiddenapis.skip=true

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.