1
firebase로 빌드 할 때 데이터를 업로드하기 위해 gradle 스크립트를 만들려고합니다. 하지만 난 중포 기지 자바 관리 SDK에서 이상한 오류를 받고 있어요 : -Firebase 데이터베이스를 gradle로 사용하기
Caused by: java.lang.NoSuchMethodError: org.json.JSONObject.<init>(Ljava/lang/String;)V
at com.google.firebase.auth.FirebaseCredentials$CertCredential.<init>(FirebaseCredentials.java:273)
at com.google.firebase.auth.FirebaseCredentials.fromCertificate(FirebaseCredentials.java:156)
at com.google.firebase.auth.FirebaseCredentials.fromCertificate(FirebaseCredentials.java:130)
at com.google.firebase.auth.FirebaseCredentials$fromCertificate.call(Unknown Source)
at eu.long1.jwnotes.gradleplugins.UploadTask.action(UploadTask.groovy:31)
작업이 다음과 같이 :
class UploadTask extends DefaultTask {
String message = "Huray!"
@TaskAction
def action() {
String a = "private-key"
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromCertificate(new ByteArrayInputStream(a.getBytes("UTF-8"))))
.setDatabaseUrl("https://jwnotes.firebaseio.com/")
.build()
FirebaseApp.initializeApp(options)
FirebaseDatabase.getInstance().getReference().child("alfa-gradle").setValue(message)
}
}
제가 적용하기 위해 노력하고있어 오류를 받고 있어요 작업을 실행하십시오.
UPDATE
이 내 플러그인 Gradle을 파일입니다
plugins {
id 'groovy'
id 'maven'
}
group 'eu.long1.jwnotes.gradleplugins'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
compile gradleApi()
compile localGroovy()
}
dependencies {
compile 'com.google.firebase:firebase-admin:5.3.1'
compile 'org.json:json:20160810'
}
sourceCompatibility = 1.8
jar {
into('lib') {
from 'lib'
}
}
나는 그것에 대해 생각했지만 여전히 같은 오류가 발생합니다. 이벤트가 플러그인 항아리에 종속성을 구축하려고 시도했습니다. –
글쎄,이 방법은 20160810 버전의 [definitely exist] (https://github.com/stleary/JSON-java/blob/20160810/JSONObject.java#L318)입니다. 따라서 Gradle에서이 문제가 발생하지 않습니다. 올바른 의존성. 'org.json : json'에 명시적인 의존성을 버리면 어떨까요? –
나는 결국 REST API를 사용했다. –