• 【bug:eclispe中启动Tomcat警告】org.apache.catalina.util.SessionIdGeneratorBase createSecureRandom


    【bug:eclispe中启动Tomcat警告】org.apache.catalina.util.SessionIdGeneratorBase createSecureRandom

    1,【背景:想要部署javaWeb项目,想要实现:在编译器内部管理Tomcat服务器(启动、关闭、重启)】:

    编译器:Eclipse 2019、

    服务器:Tomcat9.0服务器

    ① 需要在编译器内部配置一下Tomcat服务器:

    ■ 具体步骤:

    Window-> Preferences-> Server-> Runtime Environments-> Add-> 选择Tomcat版本(我选的是版本9.0的),

    然后next,选择一下tomcat的安装目录即可【最后要记得:点击一下:Apply and Close】

    (注意eclipse版本太低,是需要先安装tomcat插件,然后才能配置Tomcat服务器的)

    ② 在Eclipse 2019的控制台显示Tomcat 服务器:

    ■ 具体步骤:

    Window-> Show View -> Other-> Server [选择Server目录下的Server]。

    ③ 测试一下:Eclipse 2019 配置Tomcat 服务器到此已经成功,启动测试一下(然后在浏览器输入:http://localhost:8080):

    警告:【虽然警告,有时可以忽略,但是到这一步,启动后访问404】

    • org.apache.catalina.util.SessionIdGeneratorBase createSecureRandom

    警告: 使用[SHA1PRNG]创建会话ID生成的SecureRandom实例花费了[5,002]毫秒。

    解决1:在网上直接把问题复制粘贴后搜索:得到十个答案就有九个答案是:

    (然而,网上这种解决方式的tomcat是7/8)~~~而且我还有一个困惑的是:① 我的Tomcat直接通过 startup.bat 打开就可以直接浏览器中访问;

    而且我相同的方式在idea中就可以成功配置启动,但是eclipse失败

    所以:①这里的警告原因是因为其他原因牵连出来的;②idea成功了,而eclipse却失败了,问题出现在eclipse内部配置上

     

    ● 在Tomcat环境中解决

    1. 可以通过配置JRE使用非阻塞的Entropy Source,在catalina.sh文件中添加如下内容。 【emmmmm,找不到 -Djava.security.egd
        -Djava.security.egd=file:/dev/./urandom

           2. 添加内容完成后重启Tomcat服务,查看Tomcat服务启动日志,确认启动耗时下降。

    ● 在JVM环境中解决

    1. 打开$JAVA_PATH/jre/lib/security/java.security文件。
    2. 在文件中找到如下内容。 【emmmmmm,改了没有用
        securerandom.source=file:/dev/urandom

            将内容替换为如下内容。

        securerandom.source=file:/dev/./urandom

    解决2(正确的解决方式):

    tomcat可以正常启动但是在Eclipse下不可以正常启动:

    □ 重新配置下tomcat服务器:

    在eclipse中的server页面,双击tomcat服务,会看到如图所示的配置页面:

    Deploy Path:它的值默认是"wtpwebapps",把它改成"webapps",也就是tomcat;

    Server Locations:Use tomcat installation(Task control of Tomcat installation) 即选择tomcat的安装目录来作为项目的发布目录。

        默认是选择Use workspace metadata(does not modify Tomcat installion);

    参考文章《eclipse启动tomcat无法访问》:https://blog.csdn.net/wqjsir/article/details/7169838

    ❀ 8080 端口占用问题的解决:

    ■查找8080端口的详情:

    netstat -ano|findstr 8080

    ■杀死对应的PID号对应的线程:

    taskkill /pid PID号 /f

     
  • 相关阅读:
    多项式插值取模哈希标记法
    AC自助机
    [OIBH] 糖果盒(Candy Box)——又一个最大子矩形
    windows phone 之ListBox数据绑定
    WP学习笔记
    为TextArea添加maxlength属性
    让整个网页(LOGO图片)色调全部变灰的方法(CSS写法)
    JS调试加断点
    Container.ItemIndex 获取到行的序号
    c# Invoke 与 BeginInvoke
  • 原文地址:https://www.cnblogs.com/shan333/p/15527720.html
Copyright © 2020-2023  润新知