>

데스크톱 Gluon에서 자체 앱을 실행하면 제대로 작동하지만 휴대 전화 Sony experia에 디버거를 사용하면 로그인 UI가 표시되지만 사용자 이름과 비밀번호를 쓰면 기본 화면에 액세스 할 수 없습니다 . DB Connect와 build.gradle에 무엇을 작성해야하나요?

내 build.gradle에서 mysql 버전을 변경하려고했습니다. mysql : mysql-connector-java : 8.0.13컴파일 mysql : mysql-connector-java : 5.1.46

을 컴파일
buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'org.javafxports:jfxmobile-plugin:1.3.16'
}
}
apply plugin: 'org.javafxports.jfxmobile'
repositories {
jcenter()
maven {
    url 'http://nexus.gluonhq.com/nexus/content/repositories/releases'
}
}
 mainClassName = 'com.crm.CRM'
dependencies {
compile 'com.gluonhq:charm:5.0.2'
compile 'mysql:mysql-connector-java:8.0.13'
compile 'com.jcraft:jsch:0.1.54'
}
jfxmobile {
downConfig {
    version = '3.8.6'
    // Do not edit the line below. Use Gluon Mobile Settings in your 
  project context menu instead
    plugins 'display', 'lifecycle', 'statusbar', 'storage'
}
android {
    javafxportsVersion = '8.60.11'
    packagingOptions {
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'  
        exclude 'META-INF/rxjava.properties'
        exclude 'META-INF/spring.schemas'
        exclude 'META-INF/INDEX.LIST'
    }   
    //        compileSdkVersio=28
    manifest = 'src/android/AndroidManifest.xml'
}
ios {
    infoPList = file('src/ios/Default-Info.plist')
    forceLinkClasses = [
            'com.gluonhq.**.*',
            'javax.annotations.**.*',
            'javax.inject.**.*',
            'javax.json.**.*',
            'org.glassfish.json.**.*'
    ]
}
}

이것은 connect db의 코드입니다 :

public static Connection getConnection() {
 try {
  //Your Database usrl using String,ensure it is correct             
 Class.forName("com.mysql.jdbc.Driver");
 Connection con = 
 DriverManager.getConnection("jdbc:mysql://192.168.43.13:3306/crmywa? 
 useUnicode=yes&characterEncoding=UTF-8", "root", "");
        return con;
 } catch (Exception ex) {
 Logger.getLogger(dbmobo.class.getName()).log(Level.SEVERE, null, ex);
 }
    return null;
}

수정

결과를 ​​확인한 후 adb logcat이 결과를 얻었습니다 :

01-31 18:51:01.399 17374 17407 W System.err: Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary. 
01-31 18:51:01.403 17374 17407 W System.err: Exception in Application start method 
01-31 18:51:01.405 17374 17407 I System.out:QuantumRenderer: shutdown 
01-31 18:51:01.406 17374 17402 W System.err: java.lang.reflect.InvocationTargetException 
01-31 18:51:01.406 17374 17402 W System.err:    at java.lang.reflect.Method.invoke(Native Method) 
01-31 18:51:01.406 17374 17402 W System.err:    at javafxports.android.DalvikLauncher$1.run(DalvikLauncher.java:188)
01-31 18:51:01.406 17374 17402 W System.err:    at java.lang.Thread.run(Thread.java:761) 
01-31 18:51:01.406   364  3793 I BufferQueueProducer: [SurfaceView -com.crm/javafxports.android.FXActivity](this:0x7549311800,id:2793,api:1,p:17374,c:364) new GraphicBuffer needed 
01-31 18:51:01.406 17374 17402 W System.err: Caused by: java.lang.RuntimeException: Exception in Application start method 
01-31 18:51:01.406 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)
01-31 18:51:01.406 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$138(LauncherImpl.java:182)
01-31 18:51:01.406 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl.access$lambda$1(LauncherImpl.java)
01-31 18:51:01.407 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl$$Lambda$2.run(Unknown Source)
01-31 18:51:01.407 17374 17402 W System.err:    ... 1 more 
01-31 18:51:01.407 17374 17402 W System.err: Caused by: javafx.fxml.LoadException: 
01-31 18:51:01.407 17374 17402 W System.err: file:/data/app/com.crm-1/base.apk!/fxml/login.fxml:21
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.constructLoadException(FXMLLoader.java:2601)
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2579) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2441) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3214) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3175) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3148) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3124) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3104) 
01-31 18:51:01.407 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.load(FXMLLoader.java:3097) 
01-31 18:51:01.407 17374 17402 W System.err:    at com.crm.CRM.start(CRM.java:15) 
01-31 18:51:01.407 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$145(LauncherImpl.java:863)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl.access$lambda$8(LauncherImpl.java)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.LauncherImpl$$Lambda$9.run(Unknown Source)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$158(PlatformImpl.java:326)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl.access$lambda$6(PlatformImpl.java)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl$$Lambda$7.run(Unknown Source)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl.lambda$null$156(PlatformImpl.java:295)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl.access$lambda$18(PlatformImpl.java)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl$$Lambda$19.run(Unknown Source)
01-31 18:51:01.408 17374 17402 W System.err:    at java.security.AccessController.doPrivileged(AccessController.java:57)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl.lambda$runLater$157(PlatformImpl.java:294)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl.access$lambda$5(PlatformImpl.java)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.javafx.application.PlatformImpl$$Lambda$6.run(Unknown Source)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:93)
01-31 18:51:01.408 17374 17402 W System.err:    at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:52)
01-31 18:51:01.408 17374 17402 W System.err:    ... 1 more 
01-31 18:51:01.409 17374 17402 W System.err: Caused by:java.lang.UnsupportedOperationException 
01-31 18:51:01.409 17374 17402 W System.err:    at java.util.regex.Matcher.group(Matcher.java:383)
01-31 18:51:01.409 17374 17402 W System.err:    at com.mysql.cj.conf.ConnectionUrlParser.isConnectionStringSupported(ConnectionUrlParser.java:152)
01-31 18:51:01.409 17374 17402 W System.err:    at com.mysql.cj.conf.ConnectionUrl.acceptsUrl(ConnectionUrl.java:258)
01-31 18:51:01.409 17374 17402 W System.err:    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:195)
01-31 18:51:01.409 17374 17402 W System.err:    at java.sql.DriverManager.getConnection(DriverManager.java:569) 
01-31 18:51:01.409 17374 17402 W System.err:    at java.sql.DriverManager.getConnection(DriverManager.java:219) 
01-31 18:51:01.409 17374 17402 W System.err:    at com.crm.dbmobo.getConnection(dbmobo.java:17) 
01-31 18:51:01.409 17374 17402 W System.err:    at com.crm.LoginController.<init>(LoginController.java:78) 
01-31 18:51:01.409 17374 17402 W System.err:    at java.lang.Class.newInstance(Native Method) 
01-31 18:51:01.409 17374 17402 W System.err:    at sun.reflect.misc.ReflectUtil.newInstance(ReflectUtil.java:45) 
01-31 18:51:01.409 17374 17402 W System.err:    at javafx.fxml.FXMLLoader$ValueElement.processAttribute(FXMLLoader.java:927)
01-31 18:51:01.409 17374 17402 W System.err:    at javafx.fxml.FXMLLoader$InstanceDeclarationElement.processAttribute(FXMLLoader.java:971)
01-31 18:51:01.409 17374 17402 W System.err:    at javafx.fxml.FXMLLoader$Element.processStartElement(FXMLLoader.java:220)
01-31 18:51:01.409 17374 17402 W System.err:    at javafx.fxml.FXMLLoader$ValueElement.processStartElement(FXMLLoader.java:744)
01-31 18:51:01.409 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.processStartElement(FXMLLoader.java:2707) 
01-31 18:51:01.409 17374 17402 W System.err:    at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2527) 
01-31 18:51:01.409 17374 17402 W System.err:    ... 24 more 
01-31 18:51:01.411   364  3793 I BufferQueueProducer: [SurfaceView -com.crm/javafxports.android.FXActivity](this:0x7549311800,id:2793,api:1,p:17374,c:364) new GraphicBuffer needed

여기에 이미지 설명 입력


  • 답변 # 1

    응용 프로그램의 문제가 휴대 전화에서 열리지 않습니다 : mysql 에서이 구문으로 해결하십시오 :

    CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' WITH GRANT OPTION;
    CREATE USER 'username'@'%' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    
    

    그러면 대부분의 사용자를 데이터베이스에 추가합니다

    그리고 잘 작동하고 있습니다

    이 링크에서 가져 왔습니다. 호스트 192.168 .--- MySQL 서버에 연결할 수 없습니다

    그리고 내 build.gradle :

    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'org.javafxports:jfxmobile-plugin:1.3.16'
        }
    }
    apply plugin: 'org.javafxports.jfxmobile'
    repositories {
        jcenter()
        maven {
            url 'http://nexus.gluonhq.com/nexus/content/repositories/releases'
        }
    }
    mainClassName = 'com.crm.CRM'
    dependencies {
        compile 'mysql:mysql-connector-java:3.1.12'
    }
    jfxmobile {
        downConfig {
            version = '3.8.6'
            // Do not edit the line below. Use Gluon Mobile Settings in your project context menu instead
            plugins 'display', 'lifecycle', 'statusbar', 'storage'
        }
        android {
            javafxportsVersion = '8.60.11'
            packagingOptions {
                exclude 'META-INF/LICENSE'
                exclude 'META-INF/LICENSE.txt'
                exclude 'META-INF/NOTICE'
                exclude 'META-INF/NOTICE.txt'  
                exclude 'META-INF/rxjava.properties'
                exclude 'META-INF/spring.schemas'
                exclude 'META-INF/INDEX.LIST'
            }   
            //        compileSdkVersio=28
            manifest = 'src/android/AndroidManifest.xml'
        }
        ios {
            infoPList = file('src/ios/Default-Info.plist')
            forceLinkClasses = [
                    'com.gluonhq.**.*',
                    'javax.annotations.**.*',
                    'javax.inject.**.*',
                    'javax.json.**.*',
                    'org.glassfish.json.**.*'
            ]
        }
    }
    
    

관련 자료

  • 이전 이 표기법은 C ++에서 무엇을 의미합니까?
  • 다음 javascript - AngularJS의 배열에서 CSS 코드를 적용하는 방법은 무엇입니까?