ARTIFACTORY:如何排除noclassdefound错误?

维纳Reddy
2021-12-13 07:47

描述

在日志中可能会遇到如下错误。

[2014-07-19] [jfac] [ERROR] [4f658ce7fcdb7a11] [.s.b.w.s.s s.]ErrorPageFilter:186] [27.0.0.1-8040-exec-2] -由于异常[org.glassfish.jersey.server.],从请求[/api/v1/registry/join/router]转发到错误页面。ContainerException: java.lang. noclassdeffounderror: java/security/interfaces/ rsprivvatekey]

javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang. noclassdeffounderror: java/security/interfaces/ rsprivvatekey . html

决议

要了解相关的类是如何加载到Artifactory的JVM中的,需要检查Java类日志记录(跟踪类加载和卸载),以便进行进一步的诊断。

对于Artifactory 7.x

向系统中的extraJavaOpts添加“-verbose:class”。yaml文件。如。

extraJavaOpts: "-server -Xms512m -Xmx2g -Xss256k -XX:+UseG1GC- verbose:类

console.log中的示例条目:


[4.800s][info][class,load] java.sql. driver源码:jrt:/java.sql . net . net . net . net . net . net

[4.8015][info][class,load] com.mysql.jdbc.NonRegisteringDriver来源:/opt/jfrog/artifactory/app/artifactory/tomcat/lib/jf_mysql-connector-java-5.1.49.jar

[4.8015][info][class,load] com.mysql.jdbc.Driver源文件:/opt/jfrog/artifactory/app/artifactory/tomcat/lib/jf_mysql-connector-java-5.1.49.jar

[4.801][info][class,load] java.sql. connection来源:jrt:/java.sql . connection

[4.8015][info][class,load] com.mysql.jdbc.AbandonedConnectionCleanupThread来源:/opt/jfrog/artifactory/app/artifactory/tomcat/lib/jf_mysql-connector-java-5.1.49.jar

[4.802][信息]com.mysql.jdbc类、负载。文件:/opt/jfrog/artifactory/app/artifactory/tomcat/lib/jf_mysql-connector-java-5.1.49.jar

[4.815][info][class,load] com.fasterxml.classmate.TypeResolver来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.815][info][class,load] com.fasterxml.classmate.ResolvedType来源:文件:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.816][info][class,load] com.fasterxml.classmate.types.ResolvedRecursiveType来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.816][info][class,load] com.fasterxml.classmate.types.ResolvedArrayType来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.816][info][class,load] com.fasterxml.classmate.types.ResolvedInterfaceType来源:文件:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.817][info][class,load] com.fasterxml.classmate.types.ResolvedObjectType来源:文件:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.818][info][class,load] com.fasterxml.classmate.members.RawMember来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.818][info][class,load] com.fasterxml.classmate.members.RawConstructor来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.818][info][class,load] com.fasterxml.classmate.members.RawField来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.818][info][class,load] com.fasterxml.classmate.members.RawMethod来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar

[4.819][info][class,load] com.fasterxml.classmate.TypeBindings来源:/opt/jfrog/artifactory/app/artifactory/tomcat/webapps/access/WEB-INF/lib/classmate-1.4.0.jar


对于工件6.x:

修改$ARTIFACTORY_HOME/bin/artifactory.default文件中的JAVA_OPTIONS或如下所示:设置JVM参数。如。

export JAVA_OPTIONS="-server -Xms512m -Xmx4g -Xss256k -XX:+UseG1GC -XX:OnOutOfMemoryError="kill - 9% p"- verbose:类

来自catalina.out的示例条目:


[2.139 .s][info][class,load] java.sql. driver源代码:jrt:/java.sql

[2.139][info][class,load] org.apache.derby.jdbc.EmbeddedDriver source: file:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/lib/derby-10.14.2.0.jar

[2.139 .s][info][class,load] java.sql. sqlnontransientexception来源:jrt:/java.sql

[2.139 .s][info][class,load] java.sql. sqlfeaturenotsupportedexception来源:jrt:/java.sql

[2.140][info][class,load] org.springframework.format.datetime.joda.YearMonthFormatter来源:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/webapps/access/WEB-INF/lib/spring-context-5.1.15 release .jar

[2.140s][info][class,load] java.sql. drivermanager来源:jrt:/java.sql

[2.140][info][class,load] java.sql. sqlpermission来源:jrt:/java.sql . permission

[2.145][info][class,load] org.apache.derby.iapi.jdbc.JDBCBoot source: file:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/lib/derby-10.14.2.0.jar

[2.147][info][class,load] org.joda.time.MonthDay来源:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/webapps/access/WEB-INF/lib/joda-time-2.9.7.jar

[2.145][info][class,load] org.springframework.format.datetime.joda.MonthDayFormatter来源:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/webapps/access/WEB-INF/lib/spring-context-5.1.15 release .jar

[2.142][info][class,load] org.apache.derby.iapi.services.monitor.ModuleControl source: file:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/lib/derby-10.14.2.0.jar

[2.145][info][class,load] org.springframework.format.datetime.joda.JodaDateTimeFormatAnnotationFormatterFactory来源:file:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/webapps/access/WEB-INF/lib/spring-context-5.1.15 release .jar

[2.142][info][class,load] org.apache.derby.jdbc.InternalDriver source: file:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/lib/derby-10.14.2.0.jar

[2.143 .s][info][class,load] org.apache.derby.iapi.services.io.TypedFormat来源:file:/Users/venur/dev/art-rel/artifactory-pro-6.23.21/tomcat/lib/derby-10.14.2.0.jar


  • 如果没有从类的预期位置加载任何内容,请查看Java CLASSPATH并确保它是其中的一部分。
  • 如果从该位置加载了某些类,则可能缺少包含该类的另一个JAR文件。在Javadocs中查看所讨论的类。

请注意:问题解决后,关闭详细日志记录,因为它会影响应用程序的性能。