gpt4 book ai didi

java - 无法从 AWS Lambda 连接到 AWS RDS MySql DB。 ClassNotFoundException : com. mysql.jdbc

转载 作者:行者123 更新时间:2023-11-29 16:07:11 26 4
gpt4 key购买 nike

我正在使用 Maven 项目并在 pom.xml 文件中添加了 mysql 连接器依赖项,因此我能够正确访问 RDS MySql 数据库。但是,当我将 Maven 构建 jar 部署到 AWS Lambda 并尝试使用 API 网关调用调用该函数时,它在 cloudwatch 中显示以下错误。

*Error :*
com.mysql.jdbc.Driver: java.lang.ClassNotFoundException
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.project.Apigateway.App.handleRequest(App.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)

我不明白为什么当我将项目 jar 部署到 AWS Lambda 时,依赖关系没有得到解决。请帮助我提出宝贵的建议。

    public Connection makeJDBCConnection() throws ClassNotFoundException {

try {
Class.forName("com.mysql.jdbc.Driver");
String userName = "*****";
String password = "*****";
String dbName = "user";
String jdbcUrl = "jdbc:mysql://savetemp.cga2ptefm4rq.ap-south-1.rds.amazonaws.com:3306/" + dbName + "?user="
+ userName + "&password=" + password;
crunchifyConn = DriverManager.getConnection(jdbcUrl);
if (crunchifyConn != null) {
connected = true;
}
} catch (Exception ex) {
System.out.println("MySQL Connection Failed!" + ex);
}
return crunchifyConn;

}

最佳答案

确保您有 this已安装软件包。

关于java - 无法从 AWS Lambda 连接到 AWS RDS MySql DB。 ClassNotFoundException : com. mysql.jdbc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55624492/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com