jar-with-dependencies + 多个 mainClass 类?

jar-with-dependencies + Multiple mainClass classes?

我知道如何用一个 mainClass 创建一个 myapp-with-dependencies.jar

但我想创建 myapp-with-dependencies.jar 以在运行时支持不同的主要 类。 运行 不同的 类 应该像这样简单:

java -jar myapp-with-dependencies.jar com.myapp.MyApp1
java -jar myapp-with-dependencies.jar com.myapp.MyApp2

我相信你可以用一个薄的 jar 来做到这一点,但是你必须指定 --classpath 我不想这样做(这会使我的部署脚本复杂化)。

这可能吗?如果不是,下一个最好的东西是什么(除了 运行 它像一个薄罐子,或 creating separate jars)。也许解释为什么这是不可能的会对我和其他阅读本文的人有所帮助。

实际上,use a classpath 脂肪罐包含所有东西对我来说完全没问题:

java -cp myapp-with-dependencies.jar com.myapp.MyApp1
java -cp myapp-with-dependencies.jar com.myapp.MyApp2