Как активировать профиль Maven в зависимом модуле?

Предположим, у меня есть модульA:jar, чья среда выполнения и компиляция зависимостей зависят от версии JDK. В моем примере у меня естьpre-jdk6-profile заJAXB API: до JDK 1.6.0 мне нужно включитьjaxb-api-nnn.jar как зависимость компиляции. Этот профиль размещен вA.pom.

У меня тоже есть модульB:war, который зависит отA:jar, Я хочу иметь возможность активировать этот профиль на сервере сборки для сборки JDK 1.5.x. Когда я запускаю Maven с активированным профилем, я получаю сообщение:

mvn -Ppre-jdk6-profile -o install
[WARNING]
        Profile with id: 'pre-jdk6-profile' has not been activated.

а такжеjaxb-api-nnn.jar отсутствует в результатеB.war, Однако, если я активирую этот профиль при сборке из родительскогоpom.xml, все отлично. Это означает, что профили не наследуются от зависимостей, и родительский многомодульный pom.xml смог построить все правильно, потому что кажется, что все профили объединены в реакторе.

Перенос профиля на родительский pom ухудшает ситуацию, поскольку зависимости применяются ко всем другим проектам (например, кC:ear). Есть хорошие решения для этой задачи, а именно, если какой-либо модульA зависит от модуляB, тогда все зависимости компиляции и времени выполнения, которые активируются профилем, правильно обрабатываются?

Профиль в проектеA:jar следующим образом:

<project ...>
    <artifactId>A</artifactId>
    <packaging>jar</packaging>
    ...
    <parent>
        <artifactId>P</artifactId>
        ...
    </parent>

    <profiles>
        <profile>
            <id>pre-jdk6-profile</id>

            <activation>
                <jdk>(,1.6.0)</jdk>
            </activation>

            <dependencies>
                <dependency>
                    <groupId>javax.xml.ws</groupId>
                    <artifactId>jaxws-api</artifactId>
                </dependency>
            </dependencies>
        </profile>
    </profiles>
...
</project>

Ответы на вопрос(2)

Ваш ответ на вопрос