【问题标题】:how to generate javadoc of android library based on Aspectj?如何基于Aspectj生成android库的javadoc?
【发布时间】:2018-03-25 06:59:12
【问题描述】:

我在 android 库中使用了Aspectj。我想生成它的javadoc。 所以我写这样的任务: build.gradle

task javadoc(type: Javadoc) {
    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

当我运行这个任务时,我得到错误:

/Users/**/MyAspect.java:6: error: package org.aspectj.lang not exist
import org.aspectj.lang.ProceedingJoinPoint;
                        ^
/Users/**/MyAspect.java:7: error: package org.aspectj.lang.annotation not exist
import org.aspectj.lang.annotation.Around;

...

javadoc: warning - can not find class Aspect。
javadoc: warning - can not find class Pointcut。
javadoc: warning - can not find class Aspect。

有人知道如何根据Aspectj生成库的Javadoc吗?如果你能帮助我,我将不胜感激。非常感谢各位。

【问题讨论】:

  • aspectjrt-xx.yy.zz.jar 放在类路径中怎么样?
  • @kriegaex,谢谢,我会试试的。稍后将结果放在这里
  • @kriegaex,我和implementation 'org.aspectj:aspectjrt:1.8.13' 有朋友。所以,这不能解决这个问题。
  • 我不经常生成 JavaDoc,也从不使用 Gradle,总是使用 Maven。但是也许您可以在控制台上打印 javadoc 任务中的类路径,看看 AspectJ 运行时是否真的存在于 Javadoc 生成器中。不知何故,显然没有找到。由于您没有提供完整的MCVE,我只能推测。因此,您可以通过编辑您的问题并提供 MCVE 来帮助其他人。
  • @kriegaex,非常感谢您。非常感谢您的建议。

标签: android aspectj javadoc


【解决方案1】:

谢谢大家。我已经解决了我的问题。 我添加这样的任务来设置Javadoc任务的类路径:

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

我得到了here的答复

【讨论】:

    猜你喜欢
    • 2017-05-20
    • 1970-01-01
    • 1970-01-01
    • 2020-06-06
    • 2013-06-21
    • 2021-10-09
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    相关资源
    最近更新 更多