【问题标题】:jconsole can not connect ssl1?jconsole 无法连接 ssl1?
【发布时间】:2014-04-06 02:57:03
【问题描述】:

这是我第一次使用 jconsole。

使用它的最终目标是使用内存 redis 使用来衡量。但是,由于这是我第一次想从只打印一个短语的小型 Java 项目开始。

这是我的源代码。

public class Main {
    public static void main(String[] args) throws Exception {

        int cnt = 0;
        while(true){
            if(cnt == 100)
                break;

            System.out.println("Save me from the nap!");
            Thread.sleep(1000*30);
            cnt++;
        }
    }
};

写完这段代码后,我尝试运行 jconsole。所以我在eclipse中运行了这个程序,同时我在终端中执行了'jconsole'命令。如下所示。

>jconsole

弹出一个UI界面,我可以看到我的程序的进程ID:

所以我选择“本地”和我的进程 ID,然后按连接按钮。

但它会显示这样的错误消息。

ConnectionFailedSSL1
ConnectionFailedSSL2
<Cancel> <Insecure>

我是否需要额外的工作来执行 jconsole?给我一些具体的说明来使用它。我真的没有任何'SSL'的概念。(我只知道SSL是安全套接字层的缩写)

我的操作系统是 OSX Mavericks。

【问题讨论】:

  • 如果您选择“不安全”而不是“取消”会怎样?
  • @WarrenDew 当我按下不安全的按钮时,它可以工作。谢谢。但是,当我在这里发布这个问题时,它没有用。很难重现那种情况。再次感谢:D(我应该删除这篇文章吗?)
  • 不要删除帖子。其他人可能有同样的问题;将帖子留在这里可以让他们通过搜索找到答案,而无需发布新问题。
  • 如果重要的话,我无法使用 OS X 10.8.5 进行复制。

标签: java ssl openssl jconsole


【解决方案1】:

显然 jconsole 无法验证它在与 JVM 建立直接 SSL 连接时收到的证书。既然是在本地机器上,选择“不安全”应该是安全的,不用证书认证就可以连接。

【讨论】:

  • 非常感谢。我今天学了些新东西。祝你有美好的一天。
【解决方案2】:

您还应该确保 JVM 和 jconsole 是相同的版本 - 特别是 64 位和 32 位。

【讨论】:

    【解决方案3】:

    我们已经看到上述行为抱怨“ConnectionFailedSSL1”,即使本地连接使用 1.7.0_45-b18 关闭了 auth/ssl(所有默认值),并且它随着 1.7.0_75-b13 消失,回到如何它曾经与 java 1.6 一起使用。

    【讨论】:

      猜你喜欢
      • 2012-11-17
      • 2021-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-31
      • 2023-03-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多