我声明了一个依赖:
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-6.0</artifactId>
<version>${version.jboss.javaee6}</version>
<type>pom</type>
</dependency>
当我将范围更改为提供时,我得到编译错误,例如 EJB无法解析为类型。我不明白,文档说声明提供的依赖关系仍然在编译时使用,并且只在部署时丢弃。
那么有人可以帮我理解这些编译错误吗?
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-6.0</artifactId>
<version>${version.jboss.javaee6}</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
答案 0 :(得分:0)
我认为这个问题与你在该工件的依赖项中提到的type
有关。
到目前为止,无论我使用Maven玩什么,我都想不出任何需要添加pom type dependency
的情况。通常pom类型打包用于项目中的父模块(指定常见项目配置,如插件版本,常见依赖项,例如log4j,例如存储库,属性等)和实用程序包模块(组装项目并执行某些操作的模块)其他必要的事情)。
因此,作为建议从依赖项中删除类型标记,直到您出于任何特定目的需要它为止,让它为默认值,即jar
。