从 jdk 9 开始,`java` 命令支持 `@-file` 语法,可将类路径信息存入文本文件并直接引用,避免命令行过长或 shell 限制问题。
在构建过程中(例如使用 Maven),常需动态生成完整的类路径。Maven 的 maven-dependency-plugin 提供了便捷方式:
mvn dependency:build-classpath -Dmdep.outputFile=classpath
该命令会生成一个名为 classpath 的纯文本文件,内容为以冒号(Linux/macOS)或分号(Windows)分隔的 JAR 路径列表,例如:
./clojure-1.11.1.jar:./spec.alpha-0.3.218.jar:./core.specs.alpha-0.2.62.jar
随后,你可在 java 命令中通过 -cp @classpath 直接引用该文件:
java -cp @classpath clojure.main
✅ 关键要点: