`
yzl495
  • 浏览: 54093 次
  • 性别: Icon_minigender_1
  • 来自: 赣州
文章分类
社区版块
存档分类
最新评论

tomcat中发现的-Djava.endorsed.dirs是什么?

 
阅读更多

研究了一下tomcat的启动项目,发现Command line argument: -Djava.endorsed.dirs

之前接触过 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都改变了!!

分享到:
评论

相关推荐

    tomcat-source-code:tomcat8.x原始码-tomcat source code

    -Djava.endorsed.dirs=catalina-home/endorsed -Djava.io.tmpdir=catalina-home/temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=home/conf/logging....

    Tomcat9.0-read:tomcat源码阅读

    Djava.endorsed.dirs = D:\ code \ tomcat-read \ endorsed -Djava.io.tmpdir = D:\ code \ tomcat-read \ temp -Djava.util。 logging.manager = org.apache.juli.ClassLoaderLogManager -Djava.util.logging....

    tomcat8.5:Tomcat8.5源码解析-源码解析

    虚拟机选项: -Dcatalina.home = catalina-home -Dcatalina.base = catalina-home -Djava.endorsed.dirs = catalina-home /认可-Djava.io.tmpdir = catalina-home / temp -Djava.util.logging.manager = org .apache...

    Tomcat-Source-Code:学习tomcat

    -Dcatalina.home = catalina-home -Dcatalina.base = catalina-home -Djava.endorsed.dirs = catalina-home /认可-Djava.io.tmpdir = catalina-home / temp -Djava.util.logging.manager = org .apache.juli....

    tomcat6.0 修改启动内存设置 java jvm参数配置

    -Djava.endorsed.dirs="C:\ApacheGroup\Tomcat 5.0\common\endorsed" -Xrs ``` - 新增 `-Xms300m -Xmx350m` 到上述命令中: ```bat -Dcatalina.home="C:\ApacheGroup\Tomcat 5.0" -Djava.endorsed.dirs="C:\...

    Linux Tomcat 配置及加入服务,

    OPTIONS="-Djava.awt.headless=true -Djava.endorsed.dirs=$TOMCAT_HOME/endorsed -classpath $TOMCAT_HOME/bin/bootstrap.jar:$TOMCAT_HOME/bin/tomcat-juli.jar -Dcatalina.home=$TOMCAT_HOME -Dcatalina.base=$...

    tomcat8:tomcat8源码分析

    -Dcatalina.home=launch -Dcatalina.base=launch -Djava.endorsed.dirs=launch/endorsed -Djava.io.tmpdir=launch/temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging....

    linux环境下安装jdk及tomcat

    Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/...

    myTomcat:tomcat源码调试构建-源码搭建

    - Djava . endorsed . dirs = F : / github_code / Mine / myTomcat / catalina - home / endorsed - Djava . io . tmpdir = F : / github_code / Mine / myTomcat / catalina - home / temp - Djava . ut

    cronolog-1.6.2.tar.gz+catalina.sh

    Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties -Djava.awt.headless=true -classpath $CLASSPATH -Dcatalina.base=$CATALINA_BASE -Dcatalina.home=$CATALINA_HOME -Djava.endorsed.dirs=...

    tomcat启动内存设置[参考].pdf

    原值为-Dcatalina.home="C:\ApacheGroup\Tomcat 5.0" -Djava.endorsed.dirs="C:\ApacheGroup\Tomcat 5.0\common\endorsed" -Xrs 加入 -Xms300m -Xmx350m ``` #### 四、Tomcat作为Windows服务的参数配置 当...

    Tomcat启动调试功能

    %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" ``` 这行代码告诉Tomcat服务器启用调试模式,并指定调试参数。 结论 Tomcat启动调试功能是一种非常实用的功能,它允许开发者在Tomcat服务器上调试Java...

    设置Tomcat的初始启动内存

    2. 修改Catalina.bat文件:可以修改Catalina.bat文件的内容,例如,在166行添加以下命令:`%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%...

    bootstrap开启与关闭tomcat

    3. **JVM启动参数**: Tomcat可以通过JVM启动参数传递额外的配置信息,如`-Dcatalina.home`和`-Djava.endorsed.dirs`等,这些参数可以覆盖默认配置。 4. **加载Web应用**: 根据`server.xml`中的配置,Tomcat会加载...

    为什么运行不起来,注意是否有几个错误

    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" -...

    eclipse启动tomcat内存泄漏解决

    -Djava.endorsed.dirs="E:\Tools\apache-tomcat-6.0.35\endorsed" -server -Xms64m -Xmx4096m -XX:PermSize=32m -XX:MaxPermSize=256m ``` 接下来,我们将逐一分析并提出改进措施: 1. **优化JVM参数设置**: - *...

    Tomcat5 windows服务不能启动的终极解决方法.docx

    - 在Java VM栏,设置Auto为未选中,Java VM指向JVM DLL路径,Java Options包含必要的系统属性和启动选项,例如`-Dcatalina.home`、`-Djava.endorsed.dirs`和`-Xrs`。 - 标准流设置,如Output和Error日志路径。 4....

    tomcat 启动优化和并发并发优化配置.rar

    3. **使用ClassPath优化**:通过 `-Djava.endorsed.dirs` 指定endorsed目录,避免重复加载JAR包,减小启动时间。 4. **预热操作**:通过`jpda.start`参数启动Tomcat,进行应用预热,预先执行部分操作,降低用户首次...

Global site tag (gtag.js) - Google Analytics