之前接触过 Java.ext.dirs 用于扩展jdk的系统库,那么 -Djava.endorsed.dirs 又有什么神奇的作用呢?
java提供了endorsed技术:
关于endorsed:可以的简单理解为-Djava.endorsed.dirs指定的目录面放置的jar文件,将有覆盖系统API的功能。可以牵强的理解为,将自己修改后的API打入到虚拟机指定的启动API中,取而代之。但是能够覆盖的类是有限制的,其中不包括java.lang包中的类。
这有什么用?
比如Java的原生api不能满足需求,假设我们需要修改 ArrayList 类,由于我们的代码都是基于ArrayList做的,那么就必需用到 Java endorsed 技术,将我们自己的ArrayList,注意包和类名和java自带的都是一样的,打包成一个jar包,放入到-Djava.endorsed.dirs指定的目录中,这样我们在使用java的ArrayList的时候就会调用的我们定制的代码中,是不是很酷!!
根据官方文档描述:如果不想添加-D参数,如果我们希望基于这个JDK下的都统一改变,那么我们可以将我们修改的jar放到:
$JAVA_HOME/jre/lib/endorsed
这样基于这个JDK的所有的ArrayList都改变了!!!
连接:http://docs.oracle.com/javase/6/docs/technotes/guides/standards/index.html
分享到:
相关推荐
而decvm-0.2 for java7就是这样一款针对Java 1.7版本的插件,它为开发者带来了强大的"hotswap"功能,即代码热替换技术,使得开发者在运行时能够修改类的源代码,无需重启应用即可看到修改效果。本文将深入探讨这一...
Java 提供了 endorsed 技术来覆盖 JDK 中的类,但这不适用于 `java.lang` 包中的类。 2. **Java 代码查错** - **错误示例1**:抽象方法 `isStupidName` 缺少分号且包含花括号,抽象方法定义应为 `public abstract ...
Java Web Service(JWS)是基于Java平台的用于创建分布式应用程序的一种技术,它允许服务提供者和服务消费者通过网络进行通信。在Java环境中,JAX-WS(Java API for XML Web Services)和JAXB(Java Architecture ...
5. **endorsed.txt**: 这个文件可能是在Java运行环境中设置endorsed目录的指示。在Java中,endorsed目录用于覆盖JDK自带的标准库。当新的XML解析器或XSLT处理器比JDK自带的更先进时,可以通过在endorsed目录下放置...
这个"endorsed"文件夹可能包含了额外的库,如Java JSON处理库,这些库可以通过设置`java.endorsed.dirs`系统属性来优先加载,避免与JRE自带的库冲突。 2. 配置MySQL数据库并导入相关的数据库文件。这将创建所需的表...
在遇到类似的错误时,查阅相关的技术论坛和社区,如StackOverflow,往往能找到有效的解决方案。 总的来说,当遇到JDK 1.6与JBoss 5.x的冲突时,应首先检查两者是否兼容,并尝试更新至最新稳定版本。如果无法升级,...
JDBC 驱动(ngdbc.jar 文件)复制到 SMP 服务器的相应目录下,例如 Sybase Install>\Unwired Platform\Servers\UnwiredServer\lib\3rdparty 和 Sybase\Unwired Platform\Mobile SDK 2.2\Eclipse\endorsed 目录。...
【标题】"jsr168 portlet"是基于Java技术栈的一种Web应用程序规范,用于构建可重用、可组合的portlet组件。JSR(Java Specification Request)是Java社区进程中的一个请求,用来定义新的Java API或改进现有API。JSR...
set JAVA_OPTS=-Djava.awt.headless=true -Djava.endorsed.dirs="%CATALINA_HOME%\endorsed" -Djava.io.tmpdir="%CATALINA_TMPDIR%" -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties" -...
8. **endorsed** 目录:此目录用于存放与Java标准版(SE)兼容但优于内置Java类库的JAR文件,这些文件会在类加载时优先考虑。 9. **LICENSE** 和 **NOTICE** 文件:这两个文件分别包含了Apache Tomcat的许可协议和...
在IT行业中,尤其是在服务器端应用开发领域,Java WebService是一个重要的技术,它允许不同系统间的交互和数据交换。WS-JAX(Web Services for Java Architecture - JAX)是Java平台上的Web服务标准,提供了多种API...
8. **endorsed**:此目录用于放置Java API的替代实现,这些实现会被优先于JRE自身的类加载器加载。 Tomcat 7.0.40 版本是一个稳定版,它引入了许多改进和修复,包括性能优化、安全更新以及对Java EE 6规范的支持。...
7. **endorsed**:这个文件夹可能包含了一些Java的endorsed目录,用来放置与JDK版本兼容的第三方库,使得它们可以在不替换系统默认库的情况下被优先加载。 通过学习和实践这些资料,你可以深入了解WebService的工作...
Servlet是一种Java编程接口,用于扩展服务器的功能,而JSP则是用来创建动态网页的Java技术。JSP可以将静态内容(如HTML)与动态内容(如Java代码)相结合,使开发者能够轻松地创建交互式Web应用。 在“apache-...
- 在 Tomcat 的配置文件 `conf/catalina.properties` 中,配置 `java.endorsed.dirs` 为 `%JAVA_HOME%\lib\endorsed`。 - 如果需要关联 JDK,则可以在 Tomcat 的 `bin/catalina.bat` 文件中,设置 `JAVA_HOME` ...
Apache Tomcat是一个开源的Java Servlet...通过对这些源码的深入学习,开发者不仅可以提升对Java Web技术的理解,还能增强解决问题的能力,对于从事Java Web开发或想要成为Tomcat专家的人来说,这是一个宝贵的资源。
它实现了Java Servlet和JavaServer Pages(JSP)规范,使得开发者能够使用Java技术构建动态Web应用。 描述中的“亲试,可用”意味着这个压缩包已经被测试过,并且在Windows环境下成功运行,表明提供的Tomcat版本是...
在Java Web开发中,Tomcat扮演着服务器的角色,允许开发者在本地环境或者生产环境中运行和测试基于Java技术的Web应用。它轻量级、高效且易于配置,因此深受小型到中型企业以及开发者的喜爱。Tomcat 8.5系列在性能和...
8. `endorsed`:此目录用于放置那些需要替代默认Java类库的库,这在Java 6及更早版本中较为常见。 安装和运行Tomcat 7.0.88步骤如下: 1. 解压压缩包到你希望安装的目录。 2. 打开命令行窗口,导航到`bin`目录。 3....