OkHTTP e Picasso não funcionam juntos

Eu uso a biblioteca Picasso no meu projeto para carregar imagens e armazená-las em cache. Funciona bem sem nenhum problema. No entanto, quando tento usar a biblioteca OkHttp para executar a comunicação de dados com meu servidor (comunicação JSON), o Picasso lança exceções.

Eu uso os seguintes frascos: okhttp-2.0.0-RC2, okio-1.0.0, picasso-2.2.0. Quando executo meu projeto depois de adicionar esses jarros, ele trava com o seguinte:

06-12 11:13:15.824: E/dalvikvm(12105): Could not find class 'com.squareup.okhttp.HttpResponseCache', referenced from method com.squareup.picasso.OkHttpDownloader.<init>

Adicionei okhttp apenas para usar o seguinte método:

public static String executeHttpGet(String urlStr) {
    Response response = null;
    String result = "";
    OkHttpClient client = new OkHttpClient();

    try {
        Request request = new Request.Builder().url(urlStr).build();

        response = client.newCall(request).execute();
        result = response.body().string();
    } catch (Exception ex) {

    }
    return result;
}

O código acima funciona sem nenhum problema. No entanto, os códigos que usam a biblioteca Picasso e funcionavam perfeitamente, começam a lançar a seguinte exceção:

06-12 11:19:49.307: E/AndroidRuntime(13036): FATAL EXCEPTION: main
06-12 11:19:49.307: E/AndroidRuntime(13036): java.lang.NoClassDefFoundError: com.squareup.okhttp.HttpResponseCache
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.OkHttpDownloader.<init>(OkHttpDownloader.java:74)
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.OkHttpDownloader.<init>(OkHttpDownloader.java:51)
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.OkHttpDownloader.<init>(OkHttpDownloader.java:41)
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.Utils$OkHttpLoaderCreator.create(Utils.java:319)
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.Utils.createDefaultDownloader(Utils.java:171)
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.Picasso$Builder.build(Picasso.java:490)
06-12 11:19:49.307: E/AndroidRuntime(13036):    at com.squareup.picasso.Picasso.with(Picasso.java:390)

Caminho da minha classe:

Se eu remover okhttp-2.0.0-RC2, okio-1.0.0, as linhas do Picasso funcionarão.

Por que isso está acontecendo? Como posso usar duas bibliotecas juntas?

questionAnswers(6)

yourAnswerToTheQuestion