我正在调整我公司生产的库的javadocs。我们希望将javadocs从并非真正用于公共消费的类(主要是内部使用的类)中排除。Javadoc排除导致导入错误
该项目使用gradle作为构建系统,并且我在build.gradle文件中标记了要排除的包/类。但是,这会导致错误发生。我希望得到一个警告或错误,如果有一个被排除的类的@link,但是当这些被排除的类仅仅被导入时,它也会抛出错误。有没有办法“包含”类/包,但不是为他们导出javadoc?
编辑:下面是相关的javadoc任务:
task gendocs(type: Javadoc) {
options.stylesheetFile = new File("./assets/doc_style.css")
String v = "${SEMVER}"
version = v.replace("_", '.')
title = "SweetBlue ${version} API"
options.windowTitle = "SweetBlue"
options.memberLevel = JavadocMemberLevel.PROTECTED
options.author = true
options.linksOffline('http://d.android.com/reference', System.getenv("ANDROID_HOME") + '/docs/reference')
destinationDir = new File("${BUNDLE_FOLDER}/docs/api")
source = sourceSets.main.allJava
classpath += configurations.compile
exclude "com/idevicesinc/sweetblue/backend"
exclude "com/idevicesinc/sweetblue/utils/Utils**.java"
exclude "com/idevicesinc/sweetblue/utils/UpdateLoop.java"
exclude "com/idevicesinc/sweetblue/utils/Pointer.java"
exclude "com/idevicesinc/sweetblue/utils/HistoricalDataQuery.java"
}
编辑2:这是我说的错误:
SweetBlue/src/com/idevicesinc/sweetblue/BleCharacteristic.java:5: error: cannot find symbol
import com.idevicesinc.sweetblue.utils.Utils;
symbol: class Utils
location: package com.idevicesinc.sweetblue.utils
编辑3:
看来,排除gradle javadoc任务与使用javadoc在命令行上使用-exclude不同。我使用CLI javadoc生成了一个测试,并且没有发现我在使用Gradle时发现的错误。
如果您没有提供有关发生错误的详细信息,某人如何诊断发生了什么?这可能没有关系,但我怀疑“Utils **。java”模式是否有用。这可能应该只是“Utils * .java”。 –
我用我指的错误更新了OP。我想我之前并不清楚。我对Utils的工作很好(有多个以Utils开头的类)。他们被妥善排除。 –
我没有想法。在Gradle论坛上发布详细的说明。 –