Maven: добавить зависимость также с определенным профилем

#java #maven #maven-3 #documentum

#java #maven #maven-3 #documentum

Вопрос:

У меня есть 3 проекта:

myLibProject: имеет 2 профиля, «profileOne» и «profileTwo»: каждый профиль компилирует отдельный jar.

myFirstProject: имеет ли jar, скомпилированный myLibProject с «profileOne» в качестве dependecy

mySecondProject: имеет jar, скомпилированный myLibProject с «profileTwo» в качестве dependecy.

Возможно ли добавить myLibProject с пользовательским профилем в качестве depedency?

профиль фрагмента myLibProject: (это всего лишь образец)

 <profiles>
      <profile>
        <id>profileOne</id>
        <build>
          <plugins>
            <plugin>
              <artifactId>maven-jar-plugin</artifactId>
              <configuration>
                <excludes>
                  <exclude>**/*prop*</exclude>
                </excludes>
                   <finalName>jarFromProfileOne-${project.version}</finalName>                
              </configuration>
            </plugin>
          </plugins>
        </build>
      </profile>
      <profile>
        <id>compimpl</id>
        <build>
          <plugins>
            <plugin>
              <artifactId>maven-jar-plugin</artifactId>
              <configuration>
                <excludes>
                  <exclude>**/*.sql</exclude> 
                </excludes>
               <finalName>jarFromProfileTwo-${project.version}</finalName>            
              </configuration>
            </plugin>
          </plugins>
        </build>
      </profile>
  

myFirstProject имеет такую же зависимость

 <dependency>
    <groupId>com.mywebsite</groupId>
    <artifactId>myLibProject</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
    <with-profile>profileOne</with-profile>
</dependency>
  

mySecondProject имеет такую же зависимость

 <dependency>
    <groupId>com.mywebsite</groupId>
    <artifactId>myLibProject</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
    <with-profile>profileTwo</with-profile>
</dependency>
  

как я могу достичь этого результата? Конечно, я знаю, что «with-profile» не существует в качестве опции.

Мне нужны 2 разных jar, потому что Documentum требует, я знаю, что Maven создан для создания одного jar … поэтому я не могу использовать переменные среды или область видимости.

Maven 3.0.1

Комментарии:

1. Извините, это, вероятно, не по теме, но о каком требовании Documentum о двух разных jar мы говорим?

2. Documentum 6.6 (для модуля требуется jar с impl и jar с интерфейсом) @Miki

3. Вы пытались предоставить один и тот же jar как с интерфейсом, так и с реализацией. Я почти уверен, что это сработает

4. Проверьте это -> onemanwrites.wordpress.com/2011/05/12 /…

5. Сотни причин не делать этого. Не все, что это песочница и так далее. Это также устаревший рабочий процесс. Однако, возможно, мне просто нужно автоматически установить jar во время обеда с моими 2 профилями, но я не знаю, как это сделать