Избегать дублирования импорта OSGi в зависимости от maven?

В настоящее время, когда я пишу пакет, который зависит от пакета, мне нужно «импортировать» или «зависеть» от целого другого пакета в Maven, который содержит этот пакет.

Это кажется контрпродуктивным по сравнению с тем, что дает мне OSGi.

Например, допустим, у меня есть два пакета: BundleAPI и BundleImpl.

BundleAPI предоставляет интерфейсы API:

// BundleAPI's manifest
export-package: com.service.api

BundleImpl предоставляет реализацию:

//BundleImpl's manifest
import-package com.service.api

Однако, когда я кодирую BundleImpl в Eclipse, я вынужден «зависеть» в maven POM от самого BundleAPI , так что eclipse не жалуется.

//BundleImpl's POM
<dependency>
    <groupId>com.service</groupId>
    <artifactId>com.service.api</artifactId>
    [...]
</dependency>

Итак - с одной стороны, я использую только пакет com.service.api , а с другой - мне нужен весь пакет - BundleAPI .

Есть ли способ сделать maven или eclipse достаточно умными, чтобы просто найти где-нибудь пакеты вместо целых пакетов?

Я очень не понимаю, как это работает - любой тип c здесь было бы здорово. Может быть, мне не хватает чего-то принципиально простого?

5
задан Andriy Drozdyuk 20 June 2011 в 23:47
поделиться