Страницы

Поиск по вопросам

среда, 20 февраля 2019 г.

Android Library различия -source и -javadocs артефактов

Написал библиотеку, выложил в jcenter, подцепил и заметил алерт который меня напрягает:

Ни в одной библиотеке, которую я использовал до этого не было такого алерта, следовательно - я где-то накосячил в таске формирования -source и -javadocs артефактов.
Может кто сталкивался с этим до меня?
Скрипт формирования артефактов:
android.libraryVariants.all { variant -> def javadocTask = task("generate${variant.name.capitalize()}Javadoc", type: Javadoc) { description "Generates Javadoc for $variant.name." source = variant.javaCompile.source ext.androidJar = project.files(android.getBootClasspath().join(File.pathSeparator)) classpath = files(variant.javaCompile.classpath.files) + files(ext.androidJar) exclude '**/BuildConfig.java' exclude '**/R.java' }
javadocTask.dependsOn variant.javaCompile
def jarJavadocTask = task("jar${variant.name.capitalize()}Javadoc", type: Jar) { description "Generate Javadoc Jar for $variant.name" classifier = 'javadoc' from javadocTask.destinationDir }
jarJavadocTask.dependsOn javadocTask artifacts.add('archives', jarJavadocTask)
def jarSourceTask = task("jar${variant.name.capitalize()}Sources", type: Jar) { description "Generates Java Sources for $variant.name." classifier = 'sources' from variant.javaCompile.source }
jarSourceTask.dependsOn variant.javaCompile artifacts.add('archives', jarSourceTask) }
Сама библиотека: https://bintray.com/ztrap-llc/maven/FormattedEditText/


Ответ

Разобрался (правда не без пары вырванных клоков волос). Косяк действительно допустил я. Но узнать в каком именно месте, мне не удалось, т.к. на просторе GitHub'ов я позаимствовал скрипт, который (О, чудо!) идеально отработал.
Ниже сам скрипт:
task androidJavadocs(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) classpath += configurations.compile }
task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) { classifier = 'javadoc' from androidJavadocs.destinationDir }
task androidSourcesJar(type: Jar) { classifier = 'sources' from android.sourceSets.main.java.sourceFiles }
artifacts { archives androidSourcesJar archives androidJavadocsJar }

Комментариев нет:

Отправить комментарий