Maven:如何管理测试代码模块依赖

Maven: How to manage test code module dependencies

我们通过迁移工具将一个ant项目(代号一)迁移到了maven项目。不幸的是还有一个问题。不知何故,测试源目录(通过 pom.xml 中的 testSourceDirectory 设置)成为错误模块的一部分(至少在 IntelliJ IDEA 的项目视图中如此显示)。因此,测试源代码缺少必要的核心依赖项。核心代码(实际实现)在“通用”模块中。即使测试代码位于(在 IntelliJ 中)“通用”模块下,它本身也被标记为“cn1libs”模块的一部分。我们没有 idea,ide 或 maven 如何从 pom 配置中得出结论。

pom 中的片段:

<testSourceDirectory>${project.basedir}/common/src/test/java</testSourceDirectory>

无法解析测试源中的依赖项

我们如何解决这个问题?

有时,如果有多个模块在其 pom 文件中引用该目录,IntelliJ 会给您这样的错误标签。检查您的 cn1libs/pom.xml 文件并确保它没有在任何地方指定 <testSourceDirectory>。它的包装类型也应该是pom.

Codename One 项目设置为使用 Codename One 测试 运行ner 进行单元测试。它使用自己的“测试”目标。您正在导入 junit 的 Test class 除非您真的知道自己在做什么,否则这里可能会有问题。例如。 Codename One 测试运行ner 将设置测试环境并运行 在模拟环境中进行测试。 Junit 只会 运行 它们是原始的。

但是,如果您需要添加测试依赖项,您应该能够将它们添加到 common/pom.xml 的 dependencies 部分中文件,只需确保将依赖范围设置为“测试”即可。