gpt4 book ai didi

eclipse - Gradle 中同名的子子项目不适用于 Eclipse

转载 作者:行者123 更新时间:2023-12-02 11:58:26 26 4
gpt4 key购买 nike

我有以下结构

root
|- foo
| |- implementation
| | \- build.gradle
| \- interface
| \- build.gradle
|
|- bar
| |- implementation
| | \- build.gradle
| \- interface
| \- build.gradle
|
|- build.gradle
\- settings.gradle

在settings.gradle中我有以下内容:

include ':foo:implementation', ':foo:interface'
include ':bar:implementation', ':bar:interface'

在根文件夹的 build.gradle 中,我将它们全部作为依赖项

dependencies { 
compile project(':foo:implementation')
compile project(':foo:interface')
compile project(':bar:implementation')
compile project(':bar:interface')
}

Eclipse 需要每个项目都有不同的名称。 Gradle 默认使用项目名称在 eclipse 中命名它们。因此,Eclipse 无法区分 ':foo:implementation' 和 ':bar:implementation:',因为它们在 Eclipse 中都将被命名为 'implementation'。在我看来,这应该可以通过将 eclipse 项目名称设置为更具体的名称来解决,例如:

allprojects {
eclipse.project {
if (project == rootProject) {
name = rootProject.name
} else {
name = rootProject.name + project.path.replace(":", "-")
}
}
}

这样我就得到了唯一的项目名称,但是当我查看 .classpath xml 时,仅存在一个实现项目和一个接口(interface)项目。

有什么想法吗?

最佳答案

到目前为止,我只处理过“单目录级别”多项目;对于这种情况,有几种方法可以解决它:

  • 如果您只想针对 Eclipse 修复此问题并且使用“导入 gradle 项目”向导,则可能需要设置“使用分层项目名称”复选框。不确定它在您的情况下的表现如何(双目录级别)
  • 下一篇希望可以帮助您:how to rename the project in gradle instead of using folder name? 。可能需要对您的双目录级别进行一些额外的调查。顺便说一句,它还将更改 gradle 项目名称
  • 确实,eclipse plugin还提供了更改项目名称的方法,但我自己没有使用过......

关于eclipse - Gradle 中同名的子子项目不适用于 Eclipse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26407340/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com