【问题标题】:How do I set a folder as a Source Folder in Eclipse with Gradle?如何使用 Gradle 在 Eclipse 中将文件夹设置为源文件夹?
【发布时间】:2012-10-31 08:01:36
【问题描述】:

我创建了一个 Java 项目,并使用 Gradle 来构建它,其中包含一个源文件夹和一个包含生成文件的构建文件夹。

然后我使用 Git 签入项目并在另一台计算机上签出。但是在第二台计算机上,我无法运行这个 Java 项目,因为我的 src/ 文件夹没有被选为源文件夹。我怎样才能做到这一点?我应该对使用 Gradle 的项目设置做任何不同的事情吗?

我的build.gradle 只包含以下几行:

apply plugin: 'eclipse'
apply plugin: 'java'

当我尝试在第二台计算机上运行我的计算机时,我收到以下错误消息:

选择不包含主要类型

但它在我的第一台电脑上运行良好。

【问题讨论】:

  • 项目属性 -> Java 构建路径 -> 源代码。
  • 您是否尝试过右键单击您的文件夹 -> 构建路径 -> 用作源文件夹?
  • 在第二台电脑上,您是运行gradle eclipse并“导入现有项目”,还是使用STS Gradle插件并“导入Gradle项目”?
  • @PeterNiederwieser:我运行了gradle eclipse,然后导入了现有项目。
  • @Pshemo:谢谢,您应该将其发布为答案!

标签: java eclipse gradle


【解决方案1】:

在 Eclipse 中,右键单击您的项目 => 比例 => java 构建路径 => 在源代码中检查您的文件夹 享受

【讨论】:

    【解决方案2】:

    之前的两个答案都是正确的,但我也建议采用 Gradle 的约定(真的是 Maven 的),因为只要保持一致,它就会在未来为您节省大量时间。

    当然,您也可以始终保持一致,并将自定义 srcDirs 添加到每个项目中,但使用以下命令开始每个项目很容易:

    $ mkdir -p src/{main,test}/{java,resources}

    值得深思。 :)

    【讨论】:

      【解决方案3】:

      默认情况下,Java 插件假定生产源位于src/main/java/ 下。如果它们位于src/ 下,您必须让 Gradle 知道:

      sourceSets {
          main {
              java {
                  srcDirs = ["src"]
              }
          }
      }
      

      【讨论】:

      • @Jonas 您可能应该接受这个答案而不是我的答案,因为它使用 Gradle 解决了您的问题。我的回答更笼统。
      • 当一个新项目时,依赖关系经常发生变化,不得不反复告诉 Eclipse scripts 是一个源目录是很烦人的。我遵循 Gradle/Maven 约定,但是 Groovy 脚本不应该被编译,但应该是可运行和可调试的,进入scripts:那 Groovy 约定,它是 Groovy 插件在将荣誉。所以将这个添加到每个 Gradle 脚本中:sourceSets { main { java { srcDirs += 'scripts' } } }
      猜你喜欢
      • 2020-09-12
      • 1970-01-01
      • 1970-01-01
      • 2019-05-23
      • 2011-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-28
      相关资源
      最近更新 更多