我对maven相当新鲜。在Eclipse中,我创建了一个maven项目 在这里我可以看到src / main / java和src / test / java还有一个src文件夹,它再次包含main和test文件夹。在这里,我很困惑在哪个src文件夹中我需要编写代码。使用main和test文件夹的主要好处是什么?为什么有两个主文件夹和两个src文件夹
答案 0 :(得分:3)
在任何应用程序中,您将拥有两种“代码”类型:
生产代码是生成应用程序的原因。在Maven(以及Gradle)中,您可以定义代码所在的“主”模块。所以它位于src/main
。在里面你可能有几个文件夹:
src/main/java
用于Java代码src/main/kotlin
代表Kotlin代码测试代码可确保您的生产代码正常运行。作为生产代码,它需要放在通常称为“测试”的“模块”中。因此,您的测试代码将位于src/test
。在生产代码中,您可能有几个文件夹:
src/test/java
用于用Java编写的测试src/test/kotlin
用于用Kotlin编写的测试测试您的生产代码以确保它确实按预期工作是一种很好的做法。现实情况是,找到一个没有编写任何测试的开发人员并不奇怪,因为“这很费时”。但我强烈建议您学习如何编写质量测试
这就是所谓的“发展时间”。在“部署时”,成为应用程序的唯一代码是唯一位于main
模块
答案 1 :(得分:1)
底部的src文件夹我们应该进行单元测试。如果您不知道这意味着什么,请不要担心。在顶部文件夹中是java代码所在的位置。
答案 2 :(得分:0)
我没有看到src / main / test我在你的截图中看到了src / test。
它是将测试与实际代码分离的有效结构。
测试包不会部署到生产站点。它仅用于开发/ QA /集成环境。
答案 3 :(得分:0)
他们是同一个人。如果您使用Windows资源管理器或命令行查看目录,您将看到只有一个 src / main / java 和一个 src / test / java 。您在下面看到的文件夹就像您在资源管理器中查看文件夹和文件一样。您最常见的是文件夹的Java表示形式,即包名称。当您的测试代码进入测试时,您的生产代码将以 main 进入。换句话说,测试类位于 main ,而测试类位于测试。
答案 4 :(得分:0)
我可以看到,您对src/main
或src/test
个文件夹感到困惑。
您应该注意到顶部的src/main/java
是maven
显示文件夹的方式。
和src->main->java
(另一个文件夹)是您的文件实际存储在workspace on the disk
中的方式。
因此,如果您查看workspace
,您会在底部找到与您相同的文件夹。一个在另一个里面
现在你问为什么有两个副本:顶部的第一个是我们编写代码的地方。在底部的第二个src
(磁盘上的实际文件夹)中,它会自动反映您在顶部src
中创建的所有文件。显然,顶部的src
不是磁盘上的实际文件夹,而是maven
显示源文件夹的方式。
Main
是您的业务逻辑所在的位置,Test
是您放置testing code
以上逻辑的地方!