通过GitHub、Sonatype Maven repo使JavaDocs可用

通过GitHub、Sonatype Maven repo使JavaDocs可用,java,open-source,github,javadoc,Java,Open Source,Github,Javadoc,尽管Github为Java开源项目提供了一个很好的家,但与更成熟的开源托管场所相比,仍然缺少一些东西。到目前为止,我已经发现Sonatype为开源项目提供了Maven存储库访问,这解决了一个问题;还有许多针对用户/开发人员邮件列表的解决方案 但我现在试图解决的一件事是发布自动生成的Javadoc以供在线浏览。虽然通过Maven发布源JAR有助于IDE,但我仍然喜欢不下载或导入项目就在线浏览javadocs的能力。对于Github托管的项目,有人知道实现这一点的好方法吗?(不需要是Github提供

尽管Github为Java开源项目提供了一个很好的家,但与更成熟的开源托管场所相比,仍然缺少一些东西。到目前为止,我已经发现Sonatype为开源项目提供了Maven存储库访问,这解决了一个问题;还有许多针对用户/开发人员邮件列表的解决方案


但我现在试图解决的一件事是发布自动生成的Javadoc以供在线浏览。虽然通过Maven发布源JAR有助于IDE,但我仍然喜欢不下载或导入项目就在线浏览javadocs的能力。对于Github托管的项目,有人知道实现这一点的好方法吗?(不需要是Github提供的东西,但理想情况下可以在发布被剪切时自动发生)

Github提供静态HTML文件,这些文件位于您的repo的
gh页面
分支
http://your_username.github.com/your_repo/
。理论上,Maven可以做以下工作:

  • 提交发布版本
    pom.xml
  • 将JavaDocs生成到
    .gitignore
    'd目录中(因此它将在分支更改中保留)
  • 签出
    gh页面
    分支
  • 用JavaDocs复制到的目录替换工作目录中的所有文件
  • 承诺
  • 签出原始分支
  • 继续发布

  • 我只有两天的时间在我的一些项目中使用Maven,所以这远远超出了我的能力。我很希望看到它可以通过现有插件或自定义插件实现。

    您可以使用shell脚本按照Jake Wharton的建议执行git签出/添加/提交/签出/推送,并配置Ant或Gradle在生成javadoc后运行shell脚本。我不确定这是否适用于Maven。这里有一个。

    现在有一个Maven插件,它可以将目录推送到githib上的特定分支:。

    您可以使用github页面,创建一个静态网站,然后将javadoc放入一个目录并发送到gh pages分支

    请参阅GitHub页面,它简单而有用


    谢谢,这是一个好主意,可以很好地工作。FWIW,即使没有更多的自动化,这也可以很好地工作。我只做了“mvn安装”,将“target/apidocs”重命名为“javadoc/[VERSION]”,“git add”commit,仅此而已。仅供参考,我现在正在使用它完全自动化站点部署到
    gh页面
    分支。对于我的,我正在使用
    git new workdir
    与gh页面分支建立第二个工作目录,以及一个符号链接,用于将javadocs放入此目录。不过,没有自动提交和推送。很抱歉,我没有提到这个话题,但出于安全原因,GitHub不允许在
    gh页面
    web服务器中使用框架。但是,javadocs视图由3个框架组成。你找到工作了吗?