mam następujący błąd, gdy robi kompilacji uwolnienia Android Studio 3Błąd: json definiuje klasy, które są sprzeczne z klas teraz świadczonych przez Androida
Error: Błąd: json definiuje klasy, które są sprzeczne z klas teraz dostarczane przez Android . Rozwiązania obejmują znajdowanie nowszych wersji lub alternatywnych bibliotek, które nie mają tego samego problemu (na przykład dla httpclient używają HttpUrlConnection lub okhttp zamiast) lub przepakowania biblioteki przy użyciu czegoś takiego jak jarjar. [DuplicatePlatformClasses]
co następuje moje Zależności:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:26.0.1'
compile 'com.android.support:support-v4:26.0.1'
compile 'org.greenrobot:eventbus:3.0.0'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
compile 'com.evernote:android-job:1.2.0'
compile 'com.amitshekhar.android:android-networking:1.0.0'
compile 'com.facebook.stetho:stetho:1.5.0'
compile "me.tatarka.redux:redux-core:0.10"
compile "me.tatarka.redux:redux-android:0.10"
compile "me.tatarka.redux:redux-android-lifecycle:0.10"
compile "me.tatarka.redux:redux-thunk:0.10"
annotationProcessor "org.immutables:value:2.5.5" // <-- for annotation processor
provided "org.immutables:value:2.5.5" // for annotations
provided "org.immutables:builder:2.5.5" // for annotations
compile "me.tatarka.redux:redux-monitor:0.10"
testCompile 'junit:junit:4.12'
}
To mówiąc JSON, ale nie mogę znaleźć, który z powyższych zależnościach jest przyczyną problemu.
Oto co mam kiedy biegnę
gradlew assembleRelease
Task :app:lintVitalRelease /Users/kruyvanna/Projects/key/HappyKey_Android2/app/build.gradle: Error: json defines classes that conflict with classes now provided by Android. Solutions include finding newer versions or alternative libraries that don't have the same problem (for example, for httpclient use HttpUrlConnection or okhttp instead), or repackaging the library using something like jarjar. [DuplicatePlatformClasses]
objaśnienie kwestii typu „DuplicatePlatformClasses”: Istnieje wiele bibliotek, które powielają nie tylko funkcjonalność platformie Android, ale przy użyciu dokładnie takie same nazwy klas, jakie podano w Androidzie - na przykład klasy http apache. Może to doprowadzić do nieoczekiwanych awarii systemu .
Aby rozwiązać ten problem, trzeba albo znaleźć nowszą wersję biblioteki, które nie ma już tego problemu, lub przepakowania bibliotekę (i wszystkie jego zależnościami), używając coś jak narzędzie jarjar, albo wreszcie, przepisywanie kodu do korzystania z różnych interfejsów API (na przykład dla kodu hTTP, należy rozważyć użycie HttpURLConnection lub biblioteki takich jak okhttp.)
1 błędy, 0 ostrzeżenia
bŁĄD: Budowa niepowodzeniem z wyjątek.
Co poszło nie tak: Wykonanie nie powiodło się dla zadania ': app: lintVitalRelease'.
Lint found fatal errors while assembling a release target.
Aby kontynuować, albo rozwiązać problemy zidentyfikowane przez szarpie lub zmodyfikować skrypt kompilacji następująco: ... android { lintOptions { checkReleaseBuilds fałszywych // Lub, jeśli wolisz, możesz kontynuować w celu sprawdzenia błędów w wydaniu buduje, // ale nadal kompilacji nawet gdy nie zostaną znalezione błędy: abortOnError fałszywe } } ...
Spróbuj: Uruchom z opcją --stacktrace, aby uzyskać ślad stosu. Uruchom z opcją --info lub --debug, aby uzyskać więcej wyników dziennika.
Uzyskaj więcej pomocy w https://help.gradle.org
co budować narzędzia używacie? – Lino
Korzystam z Android Studio. Kliknięto "Kompiluj -> Wygeneruj podpisany plik APK" – vanna
Czy rozwiązałeś problem? Mam do czynienia z tym samym problemem. – Hong