java - 为什么不在 Maven 中编译测试依赖项?
问题描述
我正在尝试在 Tomcat 应用程序中使用 Morphia (MongoDB)。但我收到了这个错误:
给定的链接确认 JAR 文件丢失。
在 pom.xml 文件中,Morphia 添加了 compile 作为范围。
<dependency>
<groupId>dev.morphia.morphia</groupId>
<artifactId>core</artifactId>
<version>1.5.3</version>
<scope>compile</scope>
</dependency>
所有依赖项都作为库添加并且可以在 Eclipse 中使用。
但只有 Morphia 本身正在编译。
查看MVNrepository我怀疑只有“编译依赖项”而不是“测试依赖项”正在编译。
但是将 SLF4J API 额外添加到 pom.xml 并没有改变任何东西。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.8.0-beta2</version>
<scope>compile</scope>
</dependency>
解决方案
就像@eis 和给定的链接一样,我必须添加一个提供者,而不仅仅是 API。
但版本也不兼容。如果其他人有此问题,请使用此版本:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-sync</artifactId>
<version>4.2.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>dev.morphia.morphia</groupId>
<artifactId>morphia-core</artifactId>
<version>2.1.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.8.0-beta2</version>
<scope>compile</scope>
</dependency>
推荐阅读
- php - API 不返回任何 SQL 数据
- java - 通过 Java 注释处理器生成的 Maven 过滤资源
- ionic-framework - IONIC APK 构建错误
- javascript - iOS Safari 独立的网络应用内导航突然无法正常工作
- css - 扩展的可点击区域在 Firefox 中不起作用
- javascript - 如何调用数组中的变量
- javascript - Node.js 模块中的函数
- vmware-clarity - Clarity Grid Row Expander:我可以从我的功能中控制细节的打开吗
- javascript - 如何在javascript中检查php数组的长度
- mysql - 将 S3 数据加载到 Aurora MySQL 实例中