IntelliJ:在子文件夹中创建gradle模块

时间:2018-08-24 17:22:51

标签: java gradle intellij-idea

我有一个仓库,其中包含三个gradle项目以及许多其他资源,例如JavaScript SPA,构建脚本等;像这样的东西

/my-app
    /services
        /gradle-service-1
        /gradle-service-2
        /gradle-service-3
        /frontend
   /build
   /integration-tests

我想设置intelliJ,以便将三个gradle服务识别为模块,但是仍然在同一窗口中看到我的其余代码-所有非Java部分。

是这样的

/my-app
    /services
        /gradle-service-1 [gradle]
        /gradle-service-2 [gradle]
        /gradle-service-3 [gradle]
        /frontend
   /build
   /integration-tests

因此,当我在菜单中执行Build | Build Project时,它将构建所有三个gradle项目。

问题是,我不知道如何创建这种“嵌套”的intellij结构,在该结构中可以看到主存储库,并且某些子文件夹是Java项目。有什么办法设置吗?

如果我能看到gradle项目在旁边,只要能够构建它们,运行测试等,我也会很高兴;

/gradle-service-1 [gradle]
/gradle-service-2 [gradle]
/gradle-service-3 [gradle]
/my-app [web]
   ...

1 个答案:

答案 0 :(得分:0)

事实证明,intellij对嵌套在Java模块中的Java模块有一个明智的阻止,但没有这样的禁止将Java模块放入Web模块的禁止。

因此您可以更新.idea/my-project.iml文件并更改类型;

<?xml version="1.0" encoding="UTF-8"?> <module type="WEB_MODULE" version="4"> <!-- HERE - was type="JAVA_MODULE" <component name="NewModuleRootManager" inherit-compiler-output="true"> <exclude-output /> <content url="file://$MODULE_DIR$" /> <orderEntry type="sourceFolder" forTests="false" /> </component> </module>