【发布时间】:2018-04-03 22:49:20
【问题描述】:
我有两个 gradle 配置的项目,projectA 和 projectB。 ProjectA是一个spring boot项目,主要有两个类,一个直接运行projectA时运行,另一个运行projectB时运行(见下面的gradle文件)。 ProjectA 被导出为一个 JAR,它被声明为 projectB 的依赖项。 ProjectB 将 projectA.jar 中的一个类指定为其主类:
//ProjectB's build.gradle
apply plugin: 'application'
mainClassName = 'com.projectA.api.MainClassToBeRunInProjectB'
/**
* `verify` task, `run` task to be exact
*/
task verify(dependsOn:run)
dependencies{
compile (group:'com.projectA.api',name:'api-ProjectA-jar',version:'1.0.0')
}
//Download artifacts
repositories {
mavenLocal()
maven {
url 'http://nexus.projectJarLocations.local/nexus/content/groups/public/'
}
mavenCentral()
}
在 projectB 中运行验证步骤时,构建失败如下:
acidnbass:projectB acidnbass$ gradle clean verify
> Task :run
Error: Could not find or load main class com.projectA.api.MainClassToBeRunInProjectB
FAILURE: Build failed with an exception.
为什么我不能从 projectA 运行主类?从外部源运行主类是否需要额外的配置?
【问题讨论】: