Java 依赖于另一个Gradle脚本中的项目
我有以下文件夹结构:Java 依赖于另一个Gradle脚本中的项目,java,gradle,libgdx,Java,Gradle,Libgdx,我有以下文件夹结构: projects build.gradle core/ samples/ sample1/ build.gradle core/ desktop/ ios/ html/ android/ core项目是一个Java库,而sample1是一个希望依赖于core的Libgdx应用程序 最外层的构
projects
build.gradle
core/
samples/
sample1/
build.gradle
core/
desktop/
ios/
html/
android/
core
项目是一个Java库,而sample1
是一个希望依赖于core
的Libgdx应用程序
最外层的构建文件负责核心
项目以及另一个项目(未列出)
问题在于Libgdx应用程序还包含一个core
项目,该项目承载所有共享的游戏逻辑。这是由Libgdx项目设置工具生成的模板
如何在Gradle中解决此问题而不重命名任何项目?在根项目级别,您需要添加“settings.Gradle”,其内容如下:
rootProject.name = 'projects'
include ':core'
project(':core').projectDir = "$rootDir/core" as File
include ':samples:sample1:core'
project(':samples:sample1:core').projectDir = "$rootDir/samples/sample1/core" as File
include ':samples:sample1:desktop'
project(':samples:sample1:desktop').projectDir = "$rootDir/samples/sample1/desktop" as File
在项目(例如桌面)build.gradle中,可以添加依赖项,如:
compile project(':core')
compile project(':samples:sample1:core')
ps:Libgdx很好有没有一种不污染根文件夹的方法?我将不得不添加许多条目,每个项目的每个样本一个。。。也许我应该重命名Libgdx core项目…在每个示例中,您可以添加类似的设置。gradle但使用相对路径:core,例如在示例1中使用:project(':core')。projectDir=“../core”作为文件。此外,您可以使用任何其他名称代替:core,只要它指向该目录即可