KSP2 provides four main entry point classes for different platforms: KSPJvmMain, KSPJsMain, KSPNativeMain, and KSPCommonMain. These are located within the KSP release artifacts.
To run KSP2 via the command line (using KSPJvmMain as an example), you must construct a classpath including the KSP jar, dependency jars, the Kotlin runtime, and your processor jar.
Note: Replace 2.3.7 and other version numbers in the example below with the specific versions you are using.
java -cp \
symbol-processing-aa-2.3.7.jar:kotlin-analysis-api-2.3.7.jar:common-deps-2.3.7.jar:symbol-processing-api-2.3.7.jar:kotlin-stdlib-2.3.20.jar:kotlinx-coroutines-core-jvm-1.10.2.jar \
com.google.devtools.ksp.cmdline.KSPJvmMain \
-jvm-target 11 \
-module-name=main \
-source-roots project_dir/src/kotlin/main \
-project-base-dir project_dir/ \
-output-base-dir=project_dir/build/ \
-caches-dir=project_dir/build/caches/ \
-class-output-dir=project_dir/build/out/main/classes \
-kotlin-output-dir=project_dir/build/out/main/kotlin/ \
-java-output-dir project_dir/build/out/main/java/ \
-resource-output-dir project_dir/build/out/main/res/ \
-language-version=2.0 \
-api-version=2.0 \
path/to/processor.jar