2017-07-19 411 views
0

所以我添加一个mysql依赖于我的build.gradle,它同步完美,但问题是,我不能使用依赖代码。例如, ,我添加了mysql.jar作为依赖项,并加载,但试图导入com.mysql.jdbc.driver不会工作。gradle mysql依赖同步,但does not工作

通知,即时通讯使用libgdx库

build.gradle

buildscript { 
    repositories { 
     mavenLocal() 
     mavenCentral() 
     maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
     jcenter() 
    } 

    dependencies { 
     classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.6' 
     classpath 'com.android.tools.build:gradle:1.5.0' 
     classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.3.0' 
    } 
} 

allprojects { 
    apply plugin: "eclipse" 
    apply plugin: "idea" 

    version = '1.0' 
    ext { 
     appName = "Baladiya" 
     gdxVersion = '1.9.6' 
     roboVMVersion = '2.3.0' 
     box2DLightsVersion = '1.4' 
     ashleyVersion = '1.7.0' 
     aiVersion = '1.8.0' 
    } 

    repositories { 
     mavenLocal() 
     mavenCentral() 
     maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
     maven { url "https://oss.sonatype.org/content/repositories/releases/" } 
    } 

} 

project(":desktop") { 
    apply plugin: "java" 

    dependencies { 
     compile project(":core") 
     compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" 
     compile "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-desktop" 
     compile "com.badlogicgames.gdx:gdx-tools:$gdxVersion" 
     compile files("libs/mysql.jar") 
    } 
} 

project(":android") { 
    apply plugin: "android" 

    configurations { natives } 

    dependencies { 
     compile project(":core") 
     compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64" 
     compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-armeabi" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-armeabi-v7a" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-arm64-v8a" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-x86" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-x86_64" 
     compile files("libs/mysql.jar") 
    } 
} 

project(":ios") { 
    apply plugin: "java" 
    apply plugin: "robovm" 


    dependencies { 
     compile project(":core") 
     compile "com.mobidevelop.robovm:robovm-rt:$roboVMVersion" 
     compile "com.mobidevelop.robovm:robovm-cocoatouch:$roboVMVersion" 
     compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios" 
     compile "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-ios" 
     compile files("libs/mysql.jar") 
    } 
} 

project(":html") { 
    apply plugin: "gwt" 
    apply plugin: "war" 

    dependencies { 
     compile project(":core") 
     compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx:$gdxVersion:sources" 
     compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion:sources" 
     compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion:sources" 
     compile "com.badlogicgames.gdx:gdx-box2d-gwt:$gdxVersion:sources" 
     compile files("libs/mysql.jar") 
    } 
} 

project(":core") { 
    apply plugin: "java" 


    dependencies { 
     compile "com.badlogicgames.gdx:gdx:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion" 
     compile files("libs/mysql.jar")  
    } 
} 

tasks.eclipse.doLast { 
    delete ".project" 
} 

我的导入错误: import error

回答

0

我不太肯定很多项目如何有libs/mysql.jar,但如果包括compile files("libs/mysql.jar")依赖关系在每个项目下,你需要这样的jar下对应的项目:

desktop/ 
|- src/ 
|- libs/mysql.jar 
android/ 
|- src/ 
|- libs/mysql.jar 
ios/ 
|- src/ 
|- libs/mysql.jar 
html/ 
|- src/ 
|- libs/mysql.jar 
core/ 
|- src/ 
|- libs/mysql.jar 

既然你已经需要依赖于coredesktopandroidioshtml项目, 所以compile files("libs/mysql.jar")的依赖实际上是多余的, 你只需要它被包含在core/

让我知道这是否工作。

+0

我删除了所有的依赖性,但保留了它的核心,但是,同样的错误 – Liwaa

+0

@Liwaa,你可以做'./gradlew我干净的构建--debug' – chenrui

+0

找不到命令@chenrui – Liwaa

1

为什么你首先需要mysql.jar?通过你向我们展示来看,你只需要一个驱动程序 - 只需导入驾驶员jcenter或Maven中央例如:

compile group: 'mysql', name: 'mysql-connector-java', version: '6.0.6'

到核心。

+0

执行失败for task':android:transformClassesWithDexForDebug'。 > com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:Process'command'/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/bin/java' '非零退出值1个 – Liwaa

+0

项目( “:核心”)完成{ 应用插件: “Java” 的 依赖{ 编译 “com.badlogicgames.gdx:GDX:$ gdxVersion” 编译组:' MySQL的',名称:'mysql-connector-java',版本:'6.0.6' } } – Liwaa