root
buildSrc
src
main
kotlin
Dependencies.kt
build.gradle.kts
soa
SoaProject1
settings.gradle.kts
build.gradle.kts
SoaProject2
settings.gradle.kts
build.gradle.kts
tools
ToolProject1
ToolProject2
settings.gradle.kts
build.gradle.kts
根settings.gradle.kts如下所示:
include(
":SoaProject1",
":SoaProject2"
)
project(":SoaProject1").projectDir = File("soa/SoaProject1")
project(":SoaProject2").projectDir = File("soa/SoaProject2")
在SoaProject的一个build.gradle.kts文件中,例如,我有以下依赖项:
dependencies {
implementation("log4j:log4j:${Versions.log4j}")
}
导入/刷新gradle项目在Intellij中工作,并且依赖项被下载。但是当我尝试从子项目执行gradle任务时,我得到一个未解决的引用版本错误。
object Versions {
const val log4j = "1.2.16"
}
向西蒙致意
很抱歉回复晚了,但是问题已经解决了,你可以在第一个帖子的评论中看到。
问题是,当您有一个多项目设置,然后gradle是扫描文件夹分层。根项目中与gradle multiproject相关的每个子文件夹都需要包含一个build.gradle/build.gradle.kts文件,即使它是空的。
这样,所有的东西都工作得很好,至少在IntelliJ中,gradle支持工作得很好,模块创建得很正确。
我有一个非常基本的多项目分级设置,如下所示: 文件包括这两个子项目。根项目不应用java插件,但两个子项目都应用了。使用时,所有东西都按预期生成。 但是,据我所知,由于我没有在根项目中应用插件,因此它不应该有任务。 的输出显示任务。 但的输出只显示列有和。 所以我的问题是--在这个场景中到底执行了什么?gradle只是找到所有子项目中匹配供应模式的每一个任务吗?是否有关于此任务名称解析的特定规则?
当我使用特殊的Gradle任务运行InternalProj时,它将生成一些文件到中,然后将这些文件复制到中。不用说,这真的很难看,我想知道如何以更好的方式做到这一点。我应该将它放入构建中还是直接放入中?也许用符号链接? 现在,我使用了一个从到的相对符号链接,到目前为止,它运行良好。但现在我有一个不同的问题:任务生成一些资源,而任务依赖于这些资源,从而依赖于。如果运行或,仍然会失败,因为生成的资源没
我有一个多项目分级构建,我想应用其中一个子项目作为所有其他子项目的依赖项。 也就是说,如果我指定:
我在SBT中有一个多项目构建配置,由两个互不依赖的不同模块组成。它们只是(碰巧)属于同一产品。 项目布局如下: project/Build.scala包含常见设置,如下所示: 根构建文件 build.sbt 只需要将它们放在一起 [我也试图删除它... 最后是myProject_1/build.sbt[我刚刚省略了myProject_2/build.sbt,因为它非常相似,没有为主题提供任何附加价
我正在进行带有多个Grails插件的Grails项目(Grails2.3.11)。一个主要的Grails项目,加上一些用户定义的Grails插件和核心Java项目,创建了一个完整的应用程序。到目前为止,这些项目都是使用Ant Builder构建的。最近升级的构建过程使用Gradle。 gradle过程的问题是,有些项目需要用JDK1.7构建,有些项目需要用JDK1.8构建。为了修复它,我将java
我的项目中有一些来自Maven中央存储库的依赖项。所以我想,如果从Maven Central和其他存储库(GitHub)中删除了任何依赖项,而我将无法在某个地方找到这个依赖项并构建我的项目,该怎么办? 我想把本地依赖缓存添加到我的项目的git存储库中,这样任何人都可以克隆这个存储库并离线构建我的项目。可能是Cocoapods的方式。我怎么能这么做?