【问题标题】:What is endorseddirs and how it is used in a application?什么是 endorseddirs 以及它如何在应用程序中使用?
【发布时间】:2011-02-05 18:34:34
【问题描述】:

关于 maven-compiler-plugin。我的项目的 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>

在编译器参数中有&lt;endorseddirs&gt; 是什么意思?它是如何与 java 编译器一起工作的?

【问题讨论】:

    标签: java maven


    【解决方案1】:

    Endorsed Standards Override Mechanism的文档看,是提供newer versions of an endorsed standard than those included in the Java 2 Platform的机制

    您的项目必须正在创建和/或使用此类实现。

    通过指定&lt;endorseddirs&gt; 属性,您将指示java 编译器查看此文件夹中存在的jar,以覆盖标准jdk 中类似定义的类。

    【讨论】:

    【解决方案2】:

    Java documentationjava.endorsed.dirs 用于提供认可的标准覆盖机制。这意味着,用户可以提供比 JDK 提供的更新版本的某些包。如果在 java.endorsed.dirs 指定的目录中有这些包的更新实现,则将加载这些实现,而不是 JDK 附带的默认实现。

    可以通过这种方式覆盖的包被分为经认可的标准 API 和独立技术,并列在 Java 文档中。

    粗略地说,认可的标准 API 包括:

    • javax.rmi.CORBA
    • 各种 org.omg.* 包
    • org.w3c.dom
    • 各种 org.xml.sax.* 包

    独立技术包括:

    • 用于 XML 处理的 Java API (JAXP),1.4 版
    • 用于 XML 绑定 (JAXB) 的 Java 架构,2.0 版
    • 用于基于 XML 的 Web 服务 (JAX-WS) 的 Java API,2.0 版
    • Java 编译器 API,1.0 版
    • 可插入注释处理 API,1.0 版
    • Java 平台的通用注释,版本 1.0
    • Java 平台脚本,1.0 版
    • SOAP with Attachments API for Java (SAAJ),1.3 版

    【讨论】:

      猜你喜欢
      • 2018-07-09
      • 1970-01-01
      • 1970-01-01
      • 2017-01-21
      • 2016-12-23
      • 2013-04-24
      • 2020-08-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多