2

我正在将 JBoss AS 7 与 Maven 一起使用,并且还添加了 RichFaces,我几乎可以肯定,不要与 JBoss 一起使用。所以我将它添加到我的 pom.xml 中:

<dependency>
    <groupId>org.richfaces.core</groupId>
    <artifactId>richfaces-core-impl</artifactId>
    <version>4.1.0.Final</version>
    <scope>compile</scope>
</dependency>

但是 Richfaces 也有它的依赖关系,所以cssparsersac带有编译范围,但它们也在 JBoss AS 7 内部,所以当我运行 JBoss 时会出现以下警告:

Deployment "deployment.test.war" is using a private module ("org.w3c.css.sac:main") which may be changed or removed in future versions without notice.
Deployment "deployment.test.war" is using a private module ("net.sourceforge.cssparser:main") which may be changed or removed in future versions without notice.

我相信出现这个警告是因为我的战争和 JBoss 都有这个模块,所以我想知道:有一种方法可以在我的 POM 中将它们的范围更改为提供?即使他们是遗传的?

4

1 回答 1

1

不,您不能更改传递依赖项的范围。你能做的最好的就是<exclusions>在你的依赖声明中排除这些依赖。

于 2012-06-26T13:38:15.433 回答