【发布时间】:2012-04-24 18:15:46
【问题描述】:
在自定义 geotools 平台编译(实际上是基于 OSGi)中,当我尝试单独构建其中一个模块时,它可以正确编译。但是当我构建整个项目时 - 它在compile 阶段失败,原因是它找不到某些包/类。但是,依赖关系得到了很好的解决。
这是来自模块 pom.xml 的依赖:
<dependency>
<groupId>org.picocontainer</groupId>
<artifactId>com.springsource.org.picocontainer</artifactId>
<version>1.2.0</version>
</dependency>
maven构建错误部分:
...\geotools-osgi\modules\extension\xsd\xsd-core\src\main\java\org\geotools\xs\bindings\XSGroupBinding.java:[19,24] 包 org.picocon 容器不存在
...\geotools-osgi\modules\extension\xsd\xsd-core\src\main\java\org\geotools\xml\AbstractComplexBinding.java:[20,24] 包 org.picocon 容器不存在
...\geotools-osgi\modules\extension\xsd\xsd-core\src\main\java\org\geotools\xml\ComplexBinding.java:[21,24] 包 org.picocontainer 不存在
如果我更改 pom.xml 依赖项 - 它会因某种“无法解析捆绑包”而失败。
这个项目真的很大,而且捆绑包和子/父 pom 的数量很多。所以我不能把它们都发在这里。 所以我的问题是:这种麻烦的可能原因是什么?会不会是父子之间的依赖冲突?
【问题讨论】:
-
我不认为这可能是由父子关系引起的,因为无论你是只构建这个模块还是整个项目,类路径都是一样的。尝试使用
-X调试选项执行构建,它可能会有所启发。附:org.picocon tainer这是一个错字吗? -
是的,这是格式相关的错字,抱歉。
标签: maven dependencies osgi