microsoft/synapseml-local-setup
Set up and validate SynapseML locally in WSL or Linux. Use when an agent needs SynapseML working locally, runs sbt compile/test, sees Java 21, Scala 2.12 compiler-bridge, bad constant pool index, Spark, or local validation failures.
npx skills add https://github.com/microsoft/SynapseML --skill synapseml-local-setup
Use this skill before any local SynapseML build, compile, or test validation.
/usr/lib/jvm/java-11-openjdk-amd64
bad constant pool index: 0 while building Scala 2.12 compiler-bridge_2.12.Run scripts/synapseml-doctor.sh:
scripts/synapseml-doctor.sh --repo <synapseml-repo>
Capture:
Run scripts/synapseml-sbt.sh:
scripts/synapseml-sbt.sh --repo <synapseml-repo> -- cognitive/Test/compile
Expected result:
core and cognitive main/test classes compile.[success].Run scripts/synapseml-smoke-test.sh:
scripts/synapseml-smoke-test.sh --repo <synapseml-repo>
Expected result:
All tests passed.Before running service tests, run scripts/check-live-service-tests.sh:
scripts/check-live-service-tests.sh --path <test-file-or-directory>
If it reports live-service hooks, ask the user before running that suite. Do not create or delete Azure Search indexes just to test a PR.
Use the JDK 11 wrapper for any targeted SBT command:
scripts/synapseml-sbt.sh --repo <synapseml-repo> -- '<module>/testOnly <SuiteName> -- -z "<test filter>"'
If tests fail before compiling project code, load references/troubleshooting.md.
On 2026-05-05, this setup was validated with:
/usr/lib/jvm/java-11-openjdk-amd64openjdk version "11.0.30"2.12.17, Spark 3.5.0, sbt 1.10.11sbt 'cognitive/Test/compile' succeeded.UDFTransformerSuite filtered test succeeded.Take microsoft/synapseml-local-setup from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.