java - ]] 字符阻止 Eclipse 控制台工作

标签 java eclipse jakarta-ee console glassfish

我有一个 Java EE 7、SE 8 项目(glassfish 4.1、JSF、JPA、EJB)(Eclipse Neon)。它曾经工作正常。现在,当我启动 glassfish 时,它告诉我证书已过期。

2018-10-17T19:35:58.516+0000|Info: visiting unvisited references
2018-10-17T19:35:59.920+0000|Severe: The SSL certificate has expired: [
[
  Version: V3
  Subject: OU=Equifax Secure Certificate Authority, O=Equifax, C=US
  Signature Algorithm: SHA1withRSA, OID = 1.2.840.113549.1.1.5
  Key:  Sun RSA public key, 1024 bits
  modulus: 135786214035069526348186531221551781468391756233528066061569654028671100866720352830303278016129003918213826297308054231261658522889438712013757624116391437358730449661353175673177742307421061340003741057138887918110217006515773038453829253517076741780039735595086881329494037450587568122088113584549069375417
  public exponent: 65537
  Validity: [From: Sat Aug 22 16:41:51 UTC 1998,
               To: Wed Aug 22 16:41:51 UTC 2018]
  Issuer: OU=Equifax Secure Certificate Authority, O=Equifax, C=US
  SerialNumber: [    35def4cf]
Certificate Extensions: 7
[1]: ObjectId: 1.2.840.113533.7.65.0 Criticality=false
Extension unknown: DER encoded OCTET string =
0000: 04 0D 30 0B 1B 05 56 33   2E 30 63 03 02 06 C0     ..0...V3.0c....
[2]: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 48 E6 68 F9 2B D2 B2 95   D7 47 D8 23 20 10 4F 33  H.h.+....G.# .O3
0010: 98 90 9F D4                                        ....
]
]
[3]: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[
  CA:true
  PathLen:2147483647
]
[4]: ObjectId: 2.5.29.31 Criticality=false
CRLDistributionPoints [
  [DistributionPoint:
     [CN=CRL1, OU=Equifax Secure Certificate Authority, O=Equifax, C=US]

现在 glassfish 仍然可以正常启动并工作,项目也是如此。问题是在上面最后一行之后控制台中没有显示任何内容。但是,当我打开日志文件 server.log 时,所有内容都被写入其中。

我注意到打印这两个字符会导致问题]]

这是来自日志文件:

[4]: ObjectId: 2.5.29.31 Criticality=false
CRLDistributionPoints [
  [DistributionPoint:
     [CN=CRL1, OU=Equifax Secure Certificate Authority, O=Equifax, C=US]
]]

[5]: ObjectId: 2.5.29.15 Criticality=false…

I tried to print those lines to see if Eclipse would print them and it did print them.
public static void main(String[] args) {
        System.out.println("[4]: ObjectId: 2.5.29.31 Criticality=false");
        System.out.println("CRLDistributionPoints [");
        System.out.println("  [DistributionPoint:");
        System.out.println("     [CN=CRL1, OU=Equifax Secure Certificate Authority, O=Equifax, C=US]");
        System.out.println("]]");
        System.out.println("");
        System.out.println("[5]: ObjectId: 2.5.29.15 Criticality=false");

    }

那么问题出在哪里呢?我该如何解决它?

我尝试使用 keytool –list 列出证书以删除过期的证书。但是我收到此 keytool 错误:java.lang.Exception: keystore 文件不存在:C:\Users\Name\.keystore

注意:Eclipse Photon 中也会发生同样的情况。

最佳答案

  • 我通过以下方式修复它 D:\Dev\Servers\glassfish4\glassfish\domains\domain1\config
  • 使用 keytool -list -keystore cacerts.jks -v 列出证书
  • 获取证书的别名
  • 然后使用 keytool -delete -alias equifaxsecureca -keystore cacerts.jks 删除

关于java - ]] 字符阻止 Eclipse 控制台工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52926356/

相关文章:

java - 模式匹配面试 Q

java - 如何从具有泛型类型的抽象类调用方法(使用 java 反射)

eclipse - 如何使用eclipse在tomcat中部署多个war然后能够调试代码

java - 创建自定义 TextButton 类的问题

java - 寻找设计模式以将框架层彼此隔离

java - java 中的依赖注入(inject) - 正确用法

eclipse 错误 : glassfish\domains\domain1 does not exist

java - 映射 Http 请求

java - @Asynchronous 是否有超时

java - AppEngine - 列表字段上的 JDO 查询