Что такое одобрение и как оно используется в приложении?
В отношении плагина maven-compiler. В мой проект POM файл добавлен параметр. Конфигурация приведена ниже.
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<compilerArguments>
<endorseddirs>${endorsed.dir}</endorseddirs>
</compilerArguments>
</configuration>
</plugin>
</plugins>
Что значит иметь <endorseddirs>
в аргументах компилятора? Как это работает с java-компилятором?
Ответы
Ответ 1
Из документации механизма одобрения одобренных стандартов, это механизм обеспечения newer versions of an endorsed standard than those included in the Java 2 Platform
Ваш проект должен создавать и/или использовать такую реализацию.
Указав атрибут <endorseddirs>
, вы инструктируете java-компилятор посмотреть на банки, присутствующие в этой папке, чтобы переопределить аналогично определенные классы в стандартном jdk.
Ответ 2
В Документация по Java, java.endorsed.dirs
используется для обеспечения механизма переопределения одобренных стандартов. Это означает, что пользователь может предоставлять более новые версии определенных пакетов, чем те, которые предоставляются JDK. Если в каталогах, указанных java.endorsed.dirs, есть новые реализации этих пакетов, эти загрузки будут загружаться вместо стандартных, которые поставляются вместе с JDK.
Пакеты, которые могут быть переопределены таким образом, сгруппированы в API одобренных стандартов и автономных технологий и перечислены в документации по Java.
Грубо говоря, API-интерфейсы одобренных стандартов включают в себя:
- javax.rmi.CORBA
- различные пакеты org.omg. *
- org.w3c.dom
- различные пакеты org.xml.sax. *
Автономные технологии включают в себя:
- API Java для обработки XML (JAXP), версия 1.4
- Архитектура Java для привязки XML (JAXB), версия 2.0
- API Java для веб-служб на основе XML (JAX-WS), версия 2.0
- API компилятора Java, версия 1.0
- API совместимой обработки аннотаций, версия 1.0
- Общие аннотации для платформы Java, версия 1.0
- Сценарии для платформы Java, версия 1.0
- SOAP с API вложений для Java (SAAJ), версия 1.3