这是一个非常简单的示例,说明如何设置 Gradle 多项目,包含两个子项目:
-
Common:一个常规的 JavaFX (gradle) 项目,具有可以在以后在其他项目中重用的通用代码。
-
GluonApplication:一个简单的 Gluon Mobile 项目,它使用了通用的。
我使用 NetBeans 创建了 Gradle Root 项目并添加了子项目,但也可以从其他 IDE 或命令行完成。
1. Gradle 根项目
创建一个 Gradle 根项目。设置项目名称(本例中为GradleProject)、位置、Maven 组 ID(本例中为 com.gluonhq)和 Maven 版本(默认为 1.0-SNAPSHOT)。
2。 Gradle 通用子项目
创建一个新的 Gradle 子项目。选择一个名称 (Common),并确保该项目的位置是 GradleProject 文件夹。选择一个主类 (com.gluonhq.common.Common)。
添加一些代码:
package com.gluonhq.common;
public class Common {
public static double sum(double a, double b) {
return a + b;
}
}
3. Gluon 移动子项目
为您的 IDE 添加一个带有 Gluon 插件的 Gluon Mobile 子项目。例如选择单视图项目。选择一个名称 (GluonApplication),并再次确保该项目的位置是 GradleProject 文件夹。选择包名(com.gluonhq.application)和主类(GluonApplication)。
您可以从项目根目录中的命令行:gradle :GluonApplication:run 或从您的 IDE(任务 -> 运行)按原样运行此项目。
4.包含公共依赖项
编辑 Gluon Mobile 子项目中的 build.gradle 文件,并添加 Common 依赖项。
由于两个子项目属于同一个根项目,您可以简单地这样做:
dependencies {
compile 'com.gluonhq:charm:4.3.7'
compile project(":Common")
}
保存并重新加载项目。现在在你的代码上你可以调用Common.sum:
button.setOnAction(e -> label.setText("3 + 4: " + Common.sum(3, 4)));
再次运行,看看它是否有效。您也可以部署到移动设备。
5.安装通用模块
如果您打算在此或其他 Gluon Mobile 项目中重复使用 Common 项目,您可以将其安装在您的 .m2 存储库中。
在命令行上,从项目的根目录运行:
gradle :Common:install
您会看到项目安装在<user>/.m2/repository/com/gluonhq/common/1.0-SNAPSHOT 下,包括common-1.0-SNAPSHOT.jar 文件。
6.重用 Common jar
最后,您可以在任何项目中包含通用 jar。
为此,编辑 Gluon Mobile 子项目中的 build.gradle 文件,包含本地存储库,并添加 Common 依赖项。
repositories {
mavenLocal()
jcenter()
maven {
url 'http://nexus.gluonhq.com/nexus/content/repositories/releases'
}
}
dependencies {
compile 'com.gluonhq:charm:4.3.7'
compile 'com.gluonhq:common:1.0-SNAPSHOT'
}
保存并重新加载项目。并且您的通用代码将可用。
当然,这可以在您的机器上本地工作,但您也可以将工件发布到私有或公共仓库,然后您应该只在上述列表中包含正确的仓库。