开发者社区 问答 正文

ClassNotFoundException:java.net.http.HttpClient

我正在尝试在Windows VM上运行jar文件。使用CMD提示进行测试时,出现此错误-

Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:61)
Caused by: java.lang.NoClassDefFoundError: java/net/http/HttpClient
        at jarName.Main.removeExtinct(Main.java:250)
        at jarName.Main.main(Main.java:93)
        ... 5 more
Caused by: java.lang.ClassNotFoundException: java.net.http.HttpClient
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 7 more

这是我的MANIFEST.MF:

Manifest-Version: 1.0
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
Rsrc-Class-Path: ./ selenium-server-standalone-3.7.1.jar aws-java-sdk-s3
 -1.11.529.jar aws-java-sdk-kms-1.11.529.jar aws-java-sdk-core-1.11.529.
 jar ion-java-1.0.2.jar jackson-dataformat-cbor-2.6.7.jar jmespath-java-
 1.11.529.jar aws-java-sdk-dynamodb-1.11.529.jar httpclient-4.0.1.jar co
 mmons-logging-1.1.1.jar commons-codec-1.3.jar httpcore-4.0.1.jar jackso
 n-core-2.9.3.jar jackson-databind-2.9.3.jar jackson-annotations-2.9.0.j
 ar postgresql-42.2.8.jar json-20190722.jar commons-net-3.6.jar jasypt-1
 .9.0.jar ebay-oauth-java-client-1.1.0.jar okhttp-3.10.0.jar okio-1.14.0
 .jar snakeyaml-1.20.jar joda-time-2.9.9.jar slf4j-api-1.7.25.jar seleni
 um-java-3.11.0.jar selenium-api-3.11.0.jar selenium-chrome-driver-3.11.
 0.jar selenium-edge-driver-3.11.0.jar selenium-firefox-driver-3.11.0.ja
 r selenium-ie-driver-3.11.0.jar selenium-opera-driver-3.11.0.jar seleni
 um-remote-driver-3.11.0.jar selenium-safari-driver-3.11.0.jar selenium-
 support-3.11.0.jar byte-buddy-1.7.9.jar commons-exec-1.3.jar guava-23.6
 -jre.jar jsr305-1.3.9.jar checker-compat-qual-2.0.0.jar error_prone_ann
 otations-2.1.3.jar j2objc-annotations-1.1.jar animal-sniffer-annotation
 s-1.14.jar jjwt-0.9.0.jar commons-lang3-3.7.jar gson-2.8.6.jar
Rsrc-Main-Class: jarName.Main
Class-Path: .

我认为它说找不到的类是httpclient-4.0.1.jar,如果是MANIFEST文件,它位于第6行。我唯一想到的问题是MANIFEST末尾的Class-Path.

我还解压缩了该.jar文件,以确保.jar实际存在相关文件(假定httpclient-4.0.1.jar是正确的文件)。

我可以.jar在此VM上运行其他文件,尽管其中没有此类。我也更新了Java,以防万一,这没有帮助。

问题来源:Stack Overflow

展开
收起
montos 2020-03-27 13:29:07 1110 分享 版权
1 条回答
写回答
取消 提交回答