Модуль Android Studio Gradle чистой установки дает ошибку com.android.volley не существует

1

сценарий

Я пытаюсь создать свою первую библиотеку Android, которая является расширением Volley и предоставляет классы для интеграции Django REST Framework APIs. Нет представлений, только классы Java.

Вот как выглядят мои зависимости в модуле:

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:28.0.0'
    testImplementation 'junit:junit:4.12'
    implementation 'com.android.volley:volley:1.1.1'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

Я не получаю никакой ошибки в построении Gradle в модуле приложения.

Когда я выполняю задачу gradle: clean install, я получаю следующую ошибку

ошибка

12:12:38 PM: Executing tasks 'clean install'...

Executing tasks: [clean, install]

:package-name:clean
:package-name:preBuild UP-TO-DATE
:package-name:preReleaseBuild UP-TO-DATE
:package-name:compileReleaseAidl NO-SOURCE
:package-name:compileReleaseRenderscript
:package-name:checkReleaseManifest
:package-name:generateReleaseBuildConfig
:package-name:generateReleaseResValues
:package-name:generateReleaseResources
:package-name:packageReleaseResources
:package-name:processReleaseManifest
:package-name:generateReleaseRFile
:package-name:prepareLintJar UP-TO-DATE
:package-name:generateReleaseSources
:package-name:javaPreCompileRelease
:package-name:compileReleaseJavaWithJavac
:package-name:extractReleaseAnnotations
:package-name:mergeReleaseConsumerProguardFiles UP-TO-DATE
:package-name:mergeReleaseShaders
:package-name:compileReleaseShaders
:package-name:generateReleaseAssets
:package-name:packageReleaseAssets
:package-name:packageReleaseRenderscript NO-SOURCE
:package-name:processReleaseJavaRes NO-SOURCE
:package-name:transformResourcesWithMergeJavaResForRelease
:package-name:transformClassesAndResourcesWithSyncLibJarsForRelease
:package-name:compileReleaseNdk NO-SOURCE
:package-name:mergeReleaseJniLibFolders
:package-name:transformNativeLibsWithMergeJniLibsForRelease
:package-name:transformNativeLibsWithSyncJniLibsForRelease
:package-name:bundleReleaseAar
...src/main/java/.../DjangoErrorListener.java:19: error: package com.android.volley does not exist
import com.android.volley.AuthFailureError;
                         ^
...src/main/java/.../DjangoErrorListener.java:20: error: package com.android.volley does not exist
import com.android.volley.ClientError;
                         ^
...src/main/java/.../DjangoErrorListener.java:21: error: package com.android.volley does not exist
import com.android.volley.NetworkError;
                         ^
… MANY SIMILAR ERRORS …
                         ^
...src/main/java/.../DjangoErrorListener.java:32: error: package Response does not exist
public abstract class DjangoErrorListener implements Response.ErrorListener {
                                                             ^
...src/main/java/.../DjangoErrorListener.java:64: error: cannot find symbol
    public void onErrorResponse(VolleyError error) {
                                ^
  symbol:   class VolleyError
  location: class DjangoErrorListener
...src/main/java/.../DjangoBaseRequest.java:20: error: package android.support.annotation does not exist
import android.support.annotation.Nullable;
                                 ^
  symbol: class JsonRequest
...src/main/java/.../DjangoBaseRequest.java:68: error: package Response does not exist
                             Response.Listener<T> listener,
                                     ^
...src/main/java/.../DjangoBaseRequest.java:76: error: cannot find symbol
    abstract protected Response<T> parseNetworkResponse(NetworkResponse response);
                                                        ^
  symbol:   class NetworkResponse
  location: class DjangoBaseRequest<T>
  where T is a type-variable:
    T extends Object declared in class DjangoBaseRequest
...src/main/java/.../DjangoBaseRequest.java:76: error: cannot find symbol
    abstract protected Response<T> parseNetworkResponse(NetworkResponse response);
                       ^
  symbol:   class Response
  location: class DjangoBaseRequest<T>
  where T is a type-variable:
    T extends Object declared in class DjangoBaseRequest

...src/main/java/.../DjangoJSONArrayResponseRequest.java:21: error: package android.support.annotation does not exist
import android.support.annotation.Nullable;
                                 ^
...src/main/java/.../DjangoJSONArrayResponseRequest.java:23: error: package com.android.volley does not exist
import com.android.volley.NetworkResponse;
                         ^

...src/main/java/.../DjangoJSONArrayResponseRequest.java:27: error: package com.android.volley.toolbox does not exist
import com.android.volley.toolbox.JsonRequest;
                                 ^
...src/main/java/.../DjangoJSONArrayResponseRequest.java:61: error: package Response does not exist
                                          Response.Listener<JSONArray> listener,
                                                  ^
...src/main/java/.../DjangoJSONArrayResponseRequest.java:85: error: package Response does not exist
                                          Response.Listener<JSONArray> listener,
                                                  ^
...src/main/java/.../DjangoJSONArrayResponseRequest.java:104: error: cannot find symbol
    protected Response<JSONArray> parseNetworkResponse(NetworkResponse response) {
                                                       ^
  symbol:   class NetworkResponse
  location: class DjangoJSONArrayResponseRequest
...src/main/java/.../DjangoJSONArrayResponseRequest.java:104: error: cannot find symbol
    protected Response<JSONArray> parseNetworkResponse(NetworkResponse response) {
              ^

...src/main/java/.../DjangoJSONObjectRequest.java:23: error: package com.android.volley does not exist
import com.android.volley.NetworkResponse;
                         ^
...src/main/java/.../DjangoJSONObjectRequest.java:62: error: package Response does not exist
                                   Response.Listener<JSONObject> listener,
                                           ^

… MANY SIMILAR ERRORS …


...src/main/java/.../DjangoJSONObjectRequest.java:84: error: package Response does not exist
                                   Response.Listener<JSONObject> listener,
                                           ^
...src/main/java/.../DjangoJSONObjectRequest.java:103: error: cannot find symbol
    protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
                                                        ^
  symbol:   class NetworkResponse
  location: class DjangoJSONObjectRequest
...src/main/java/.../DjangoJSONObjectRequest.java:103: error: cannot find symbol
    protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
              ^
  symbol:   class Response
  location: class DjangoJSONObjectRequest
...src/main/java/.../DjangoBaseRequest.java:67: error: cannot find symbol
                             @Nullable String jsonRequest,
                              ^

… MANY SIMILAR ERRORS …

  symbol:   class Nullable
  location: class DjangoJSONObjectRequest
...src/main/java/.../DjangoJSONObjectRequest.java:85: error: cannot find symbol
                                   @Nullable DjangoErrorListener errorListener,
                                    ^
  symbol:   class Nullable
  location: class DjangoJSONObjectRequest
...src/main/java/.../DjangoBaseRequest.java:81: error: malformed HTML
     * @return Map<String, String> a Map of headers
                  ^
...src/main/java/.../DjangoBaseRequest.java:81: error: bad use of '>'
     * @return Map<String, String> a Map of headers
                                 ^
...src/main/java/.../DjangoBaseRequest.java:82: error: reference not found
     * @throws AuthFailureError from super
       ^
...src/main/java/.../DjangoBaseRequest.java:65: warning: no @param for context
    public DjangoBaseRequest(int method,
           ^
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
...src/main/java/.../DjangoErrorListener.java:62: error: reference not found
     * @param error A {@link VolleyError} object.
                             ^
...src/main/java/.../DjangoJSONArrayResponseRequest.java:46: error: reference not found
     * Based on {@link com.android.volley.toolbox.JsonObjectRequest}
                       ^
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
...src/main/java/.../DjangoJSONObjectRequest.java:47: error: reference not found
     * Based on {@link com.android.volley.toolbox.JsonObjectRequest}
                       ^
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
javadoc: warning - Class Nullable not found.
:package-name:javadoc
6 errors
62 warnings
:package-name:javadoc FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':package-name:javadoc'.
> Javadoc generation failed. Generated Javadoc options file (useful for troubleshooting): '...build/tmp/javadoc/javadoc.options'

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

        * Get more help at https://help.gradle.org

        BUILD FAILED in 1s
23 actionable tasks: 21 executed, 2 up-to-date
12:12:40 PM: Tasks execution finished 'clean install'.

Исходный код

GitHub

Я искал в интернете, но безуспешно! Кто-нибудь сталкивался с этой ошибкой раньше? Что я делаю неправильно?

Теги:
build.gradle
android-gradle
android-library

2 ответа

1
Лучший ответ

Возможно, вы ищете неправильные ключевые слова в Google. Если вы хотите исправить javadoc и не пропустить его, это поможет. Я провел некоторое исследование и нашел решение.

afterEvaluate {
    javadoc.classpath += files(android.libraryVariants.collect { variant ->
        variant.javaCompiler.classpath.files
    })
}

Вот оригинальный ответ

Я также выдвинул решение на GitHub.

  • 0
    Работает как шарм. Поскольку у меня нет достаточного представления об Android & Gradle , я просто искал выпуск библиотеки Android. Я должен был искать ошибку javadoc ...
1

Проблема в генерации Javadoc. Наличие не-ASCII символов в javadoc вызывает проблему. Чтобы решить эту проблему, вы должны отключить ее, используя приведенный ниже фрагмент кода. Когда я рассмотрел исходный код вашего проекта, вы должны добавить его в файл bintray_script.

tasks.withType(Javadoc) {
    enabled = false
}
  • 0
    Есть ли способ исправить это вместо того, чтобы пропустить шаг?
  • 0
    Я не мог найти в любом случае, если это не так. Я делал это раньше, но удивительно, но здесь вы можете видеть, что загружен Javadoc моей библиотеки. (Также для всех других библиотек, которые я опубликовал)
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню