Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

idea JDK11 报错ClassNotFoundException: java.sql.Date #182

Closed
stu0lea opened this issue Apr 27, 2023 · 1 comment
Closed

idea JDK11 报错ClassNotFoundException: java.sql.Date #182

stu0lea opened this issue Apr 27, 2023 · 1 comment

Comments

@stu0lea
Copy link

stu0lea commented Apr 27, 2023

使用默认的文本翻译演示代码:

import com.tencentcloudapi.common.Credential;
import com.tencentcloudapi.common.exception.TencentCloudSDKException;
import com.tencentcloudapi.tmt.v20180321.TmtClient;
import com.tencentcloudapi.tmt.v20180321.models.*;



public class TransApiTx
{
    public static void main(String [] args) {
        try{
            // 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密
            // 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305
            // 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取


            Credential cred = new Credential(SecretId, SecretKey);
            // 实例化要请求产品的client对象,clientProfile是可选的
            TmtClient client = new TmtClient(cred, "ap-beijing");
            // 实例化一个请求对象,每个接口都会对应一个request对象
            TextTranslateRequest req = new TextTranslateRequest();
            req.setSourceText("test");
            req.setSource("auto");
            req.setTarget("zh");
            req.setProjectId(1L);
            // 返回的resp是一个TextTranslateResponse的实例,与请求对象对应
            TextTranslateResponse resp = client.TextTranslate(req);
            // 输出json格式的字符串回包
            System.out.println(TextTranslateResponse.toJsonString(resp));
        } catch (TencentCloudSDKException e) {
            System.out.println(e.toString());
        }
    }
}

报错如下:

Exception in thread "main" java.lang.NoClassDefFoundError: java/sql/Date
at cn.viewcn.nessusdm/cn.viewcn.nessusrm.api.TransApiTx.main(TransApiTx.java:31)
Caused by: java.lang.ClassNotFoundException: java.sql.Date
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 1 more

但换成jdk1.8就不报错了

@zqfan
Copy link
Member

zqfan commented May 4, 2023

可能是classpath太长之类的问题导致的,这是java8迁移到java11时可能遇到的问题之一,你可以参考下微软的这篇文章看看,https://learn.microsoft.com/en-us/java/openjdk/transition-from-java-8-to-java-11

@zqfan zqfan closed this as completed May 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants