文档说
在我的例子中,主类不在主要的源集中,而是在jmh
中(我想快速尝试一些事情,而不使用那里定义的类来通过JMH基础结构)。我还可以使用应用程序插件吗?
正如预期的那样,简单地使用./gradlew :benchmarks:run
给出“无法找到或加载主类MyMainClass
”。 :jmhRun
(与其他任务类比)给出了“任务'jmhRun'在项目'基准'中找不到”。 :runJmh
是一样的。
仍然不可能(Gradle 5.0),因为main
源代码集的名称在org.gradle.api.plugins.ApplicationPlugin#addRunTask
中是不可配置的。我在https://github.com/gradle/gradle/issues/8113那里创造了一个问题。
UPD:正如gradle问题中所建议的那样
tasks.named('run', JavaExec) {
classpath = <wanted classpath>
}