Skip to content

Conversation

@JoshRosen
Copy link
Contributor

This pull request fixes multiple issues with API doc generation.

  • Modify the Jekyll plugin so that the entire doc build fails if API docs cannot be generated. This will make it easy to detect when the doc build breaks, since this will now trigger Jenkins failures.
  • Change how we handle the -target compiler option flag in order to fix javadoc generation.
  • Incorporate doc changes from @thunterdb (in [SPARK-12000] Fixes compilation issues with java8 and sbt. #10048).

Closes #10048.

@JoshRosen
Copy link
Contributor Author

Chatted with @thunterdb and we figured out that the Scala compiler error reported in SPARK-12000 does not occur under Java 8. Tim's Javadoc changes in his PR are required for Javadoc compilation to work under JDK 8, but do not address the issue where Scaladoc compilation fails under Java 7. I'm going to see if I can fix the Java 7 doc build, since we use Java 7 for release and snapshot builds.

In principle, we could use Java 8 to do the snapshot builds while targeting Java 7, but then we'd have to configure out build to use a Java 7 class library in oder to avoid the introduction of subtle incompatibilities caused by Java 8 standard library classes being used.

@JoshRosen
Copy link
Contributor Author

It looks like Jenkins is able to successfully generate the Scaladocs using Java 7, but my Mac laptop hits that compiler error. I'm going to try upgrading to a newer Java 7 JDK to see if that resolves things.

For posterity, I'm currently encountering the compiler issues while using the following JDK:

[joshrosen ~]$ java -version
java version "1.7.0_65"
Java(TM) SE Runtime Environment (build 1.7.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

@JoshRosen
Copy link
Contributor Author

Yep, looks like upgrading to a newer JDK fixed things. Here's what worked for me:

java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

Given that using a newer JDK seems to be how we've been able to successfully publish Scaladoc for 1.5.x, I'm going to go ahead and recommend a JDK upgrade as the solution to the Scaladoc issue. Therefore, I think that we're good to merge this and resolve the JIRA issue.

@marmbrus
Copy link
Contributor

marmbrus commented Dec 1, 2015

LGTM

@JoshRosen
Copy link
Contributor Author

Going to merge this now into master and branch-1.6.

asfgit pushed a commit that referenced this pull request Dec 1, 2015
This pull request fixes multiple issues with API doc generation.

- Modify the Jekyll plugin so that the entire doc build fails if API docs cannot be generated. This will make it easy to detect when the doc build breaks, since this will now trigger Jenkins failures.
- Change how we handle the `-target` compiler option flag in order to fix `javadoc` generation.
- Incorporate doc changes from thunterdb (in #10048).

Closes #10048.

Author: Josh Rosen <[email protected]>
Author: Timothy Hunter <[email protected]>

Closes #10049 from JoshRosen/fix-doc-build.

(cherry picked from commit d3ca8cf)
Signed-off-by: Josh Rosen <[email protected]>
@asfgit asfgit closed this in d3ca8cf Dec 1, 2015
@JoshRosen JoshRosen deleted the fix-doc-build branch December 1, 2015 00:40
@SparkQA
Copy link

SparkQA commented Dec 1, 2015

Test build #46907 has finished for PR 10049 at commit 38c1390.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops, forgot the quotes here. Will fix in a followup PR or a hotfix.

@JoshRosen
Copy link
Contributor Author

Hmm, now I seem to have started having problems even in spite of the JDK update. Will investigate.

@JoshRosen
Copy link
Contributor Author

Now I'm very confused: it looks like Jenkins is actually using a different Java 7 JDK:

Using /home/jenkins/tools/hudson.model.JDK/JDK_7u60 as default JAVA_HOME.

asfgit pushed a commit that referenced this pull request Dec 1, 2015
asfgit pushed a commit that referenced this pull request Dec 1, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants