2016-02-17 13 views
3

В моем проекте Android Studio я получаю предупреждения вроде этого - заявив, что есть более новая версия. (Gson: с помощью 2.3.1, но 2.4 доступна)Android Studio предупреждает, что доступна новая версия библиотеки, но ее нет

Android Studio warning

Но когда я затем обновить свой Gradle файл использовать вместо 2.4:

compile 'com.google.code.gson:gson:2.4' 

Я получаю ошибку, что это не может быть решена : Android Studio error

(я также пытался 2.4.0 без каких-либо улучшений)

Так что - может кто-нибудь объясняет мне, почему предлагается новая версия, но не может быть решена? Что мне не хватает?

Спасибо!

+1

отправьте свой проект build.gradle – sanemars

+1

Согласно [mvnrepository] (http://mvnrepository.com/artifact/com.google.code.gson/gson), последняя версия - '2.6.1'. Хотя 'com.google.code.gson: gson: 2.4' должен работать –

+0

От того, что вы показали до сих пор, 2.4 должен работать. Понятно, что у нас, жалобщиков, что-то не хватает, мы не сможем понять это без дополнительной информации. Можете ли вы показать свой раздел репозиториев, пожалуйста. Обратите внимание, что будет (по крайней мере) два из них. – RaGe

ответ

0

По Gradle 1.7, jcenter() является надстройкой mavenCentral()

баночки будут загружены с онлайн центрального хранилища jcenter. поэтому добавляется только следующее заявление.

dependencies { 
compile 'com.google.code.gson:gson:2.2.+' 
} 
+1

Есть несколько ситуаций, когда использование динамической версии для зависимостей имеет смысл - например, когда вы активно развиваете библиотеку, в которой вы находитесь. В большинстве стандартных ситуаций, как и этот, вы не должны использовать динамические версии, потому что это делает вашу сборку недетерминированной. Ваша сборка может просто случайно начать неудачно, если новая несовместимая версия библиотеки станет доступной. – RaGe

+0

приятное понимание. спасибо –

+0

Конечно. Но это не имеет никакого отношения к моему вопросу «Почему предлагается 2,4, но недоступно?» – Zordid

1

Gson библиотека Java, которая может быть использована для преобразования объектов Java в их JSON представления. Его также можно использовать для преобразования строки JSON в эквивалентный объект Java.

Вы можете использовать ниже Стабильная версия

compile 'com.google.code.gson:gson:2.3' 

Последнее является Gson 2.6.1

compile 'com.google.code.gson:gson:2.6.1' 
+0

Не объясняет, почему 2.4 не работает. – RaGe

+0

Я использую 2.3.1, как вы можете видеть. Затем в предупреждении говорится: «Используйте 2.4, это новее!» - и когда я это делаю, он говорит: «Ну, нет, у меня нет версии 2.4!» Это мой вопрос. Не работает ли 2.3 или 2.6.1 ... :) – Zordid

+0

, как вы можете видеть, 2.4 также является стабильным выпуском http://mvnrepository.com/artifact/com.google.code.gson/gson –

0

добавить репозитории в вашем build.gradle, он будет работать

repositories { 
    mavenCentral() 
} 
+0

Конечно, я получил репозиторий - jcenter - в своем файле gradle. mavenCentral не является стандартным. Плюс, это не отвечает на мой вопрос: «Почему предлагается 2,4, но когда я пытаюсь его использовать, не так ли?» – Zordid

+0

@ Zordid 2.4 доступен, я не знаю, почему он не работает в ур-стороне, потому что я использую ту же версию с mavenCentral, что он отлично работает для меня. –

0

У меня такая же проблема. «Invalidate Caches/Restart» в меню файлов Android Studio разрешает это.