Увеличение вместо того, чтобы переопределить конфигурацию Знатока

Разработайте, на чем Вам нравится. Как программист Java Вы могли бы хотеть избежать Mac OS X, прежде всего, потому что новые возможности, кажется, были значительно отложены, и также потому что можно найти, что Вы больше не получали машину, которая поддерживает новые версии Java. Говорить, что я предполагаю разрабатывать на Mac OS X, должно быть очень хорошим (интерфейс командной строки, dtrace, хорошая ОС).

я разрабатываю на окнах с IntelliJ 7. Это в порядке, но нуждается в некоторых значительных аппаратных средствах. Я тогда развертываюсь на solaris/linux. Если Вы не пишете GUI или интегрируетесь с кодом C++, необходимо быть прекрасным выбором, вообще поражает воображение.

19
задан Community 23 May 2017 в 12:01
поделиться

2 ответа

Это было объяснено в сообщении блога от Sonatype.

В родительском pom, указать

<configuration>
  <aspectLibraries combine.children="append">
    <aspectLibrary>
      <groupId>name.seller.rich</groupId>
      <artifactId>tracing</artifactId>
    </aspectLibrary>
  </aspectLibraries>
</configuration>

В общем, элементы конфигурации дочерних элементов имеют приоритет над элементами, указанными в родительском элементе для любого данного подключаемого модуля. По умолчанию это упрощает задачу: полностью сконфигурированный дочерний элемент будет использовать именно ту конфигурацию, которая содержится в его pom. Однако,

22
ответ дан 30 November 2019 в 04:33
поделиться

Мне нужно это проверить, поэтому позвольте мне вернуться к вам по этому поводу, но я думаю, что правильный способ сделать это - использовать свойства , как отмечено здесь . В вашем случае код будет выглядеть следующим образом:

<properties>
  <aspect.library.groupId>name.seller.rich</aspect.library.groupId>
  <aspect.library.artifactId>tracing</aspect.library.artifactId>
</properties>

<plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>aspectj-maven-plugin</artifactId>
   <executions>
     <execution>
     <id>compile_with_aspectj</id>
       <goals>
         <goal>compile</goal>
       </goals>
     </execution>
   </executions>
   <configuration>
     <aspectLibraries>
       <aspectLibrary>
         <groupId>${aspect.library.groupId}</groupId>
         <artifactId>${aspect.library.artifactId}</artifactId>
       </aspectLibrary>
     </aspectLibraries>
   </configuration>
   <dependencies>
     <dependency>
       <groupId>aspectj</groupId>
       <artifactId>aspectjtools</artifactId>
       <version>1.5.3</version>
     </dependency>
   </dependencies>
</plugin>

Затем в дочернем элементе вы сможете изменить эти свойства, и родительский элемент автоматически выберет новые значения:

<properties>
  <aspect.library.groupId>name.seller.rich</aspect.library.groupId>
  <aspect.library.artifactId>something-else</aspect.library.artifactId>
</properties>

Я думаю, что вы, возможно, запрашиваете возможность добавления конфигурации, чтобы иметь дополнительный узел в конфигурации вашего ребенка поверх узла, указанного в родительском. Для этого случая я не могу придумать очевидного решения.

2
ответ дан 30 November 2019 в 04:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: