java - 如何在android studio中正确安装jdbc驱动?
问题描述
我一直在尝试在 android studio 中安装 jdbc 驱动程序以连接到 mysql 数据库。
我已经尝试以两种方式来做到这一点,这些方式已经在 stackoverflow 上进行了解释,但它们不再起作用了。两次我都使用了解压我在这里下载的文件后得到的 jar 文件。
第一种方法是将 jar 文件复制到 libs 文件夹中,然后单击鼠标右键将其添加为库。
第二次尝试是按照本教程:How to Mysql JDBC Driver to android studio。
我总是可以构建我的应用程序,但是当我尝试在模拟器或外部 android 设备上运行它时,我收到了以下错误:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.app.app/com.app.app.LoginScreen}: java.lang.ClassNotFoundException: Didn't find class "com.app.app.LoginScreen" on path: DexPathList[[zip file "/data/app/com.app.app-XrBFCO1PMt-F537ZaZs6PQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.app.app-XrBFCO1PMt-F537ZaZs6PQ==/lib/x86, /system/lib, /vendor/lib]]
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.app.app.LoginScreen" on path: DexPathList[[zip file "/data/app/com.app.app-XrBFCO1PMt-F537ZaZs6PQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.app.app-XrBFCO1PMt-F537ZaZs6PQ==/lib/x86, /system/lib, /vendor/lib]]
这是以第二种方式安装库的 build.gradle 文件:apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "app"
minSdkVersion 26
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile 'com.android.support:support-annotations:27.1.1'
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation project(':mysql-connector-java-8.0.11')
}
小旁注:我知道我的代码没有错误,因为我在 Intellij IDE 中对其进行了测试,我确实成功安装了驱动程序。
我希望你们中的任何人都可以帮助我。你会摇滚!
解决方案
- 将 .jar 复制并粘贴到您的文件夹 APP 中:
你的应用\应用\库
在 Gradle 文件中添加:
dependencies { implementation 'com.android.support:appcompat-v7:27.1.1' implementation fileTree(dir: 'libs', include: ['*.jar']) . . . implementation files('libs/YourFILE') }
添加你的班级。那对我有用。
推荐阅读
- ethereum - 以太坊 LES getProofsV2 总是返回 [](空节点)
- python - 使用 http.server 访问底层套接字
- brat - 在 Brat 中如何通过 UI 设置事件?
- python - 如何将单选按钮值附加到列表
- objective-c - 加速度计和陀螺仪多值 - DJI iOS UXSDKDemo
- javascript - 使用javascript获取html中的子节点和子子节点
- regex - 如何在 Nginx 中使用 mod_rewrite 进行多次查询
- java - JavaSE 的 `java.sql javax.sql` 和 JDBC 驱动程序之间有什么关系?
- postgresql - Postgres:返回记录-错误-查询没有结果数据的目的地
- ios - 为什么 Metal 没有 rgb8Unorm MTLPixelFormat?