diff --git a/hadoop-common-project/hadoop-auth/src/main/java/org/apache/hadoop/security/authentication/server/AuthenticationToken.java b/hadoop-common-project/hadoop-auth/src/main/java/org/apache/hadoop/security/authentication/server/AuthenticationToken.java
index 6303c956ab5..8295fe173f4 100644
--- a/hadoop-common-project/hadoop-auth/src/main/java/org/apache/hadoop/security/authentication/server/AuthenticationToken.java
+++ b/hadoop-common-project/hadoop-auth/src/main/java/org/apache/hadoop/security/authentication/server/AuthenticationToken.java
@@ -62,7 +62,8 @@ public class AuthenticationToken extends AuthToken {
/**
* Sets the max inactive time of the token.
*
- * @param max inactive time of the token in milliseconds since the epoch.
+ * @param maxInactives inactive time of the token in milliseconds
+ * since the epoch.
*/
public void setMaxInactives(long maxInactives) {
if (this != AuthenticationToken.ANONYMOUS) {
diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt
index db671ae23d7..a7ea0aa171b 100644
--- a/hadoop-common-project/hadoop-common/CHANGES.txt
+++ b/hadoop-common-project/hadoop-common/CHANGES.txt
@@ -1060,6 +1060,9 @@ Release 2.8.0 - UNRELEASED
HADOOP-12348. MetricsSystemImpl creates MetricsSourceAdapter with wrong
time unit parameter. (zxu via rkanter)
+ HADOOP-12087. [JDK8] Fix javadoc errors caused by incorrect or illegal
+ tags. (Akira AJISAKA via stevel).
+
OPTIMIZATIONS
HADOOP-12051. ProtobufRpcEngine.invoke() should use Exception.toString()
diff --git a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/ProducerConsumer.java b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/ProducerConsumer.java
index 3dad4e3b742..bf72bb88aa6 100644
--- a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/ProducerConsumer.java
+++ b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/ProducerConsumer.java
@@ -32,9 +32,10 @@ import java.util.concurrent.LinkedBlockingQueue;
/**
* ProducerConsumer class encapsulates input and output queues and a
- * thread-pool of Workers that loop on WorkRequest inputQueue and for each
- * consumed WorkRequest Workers invoke WorkRequestProcessor.processItem()
- * and output resulting WorkReport to the outputQueue.
+ * thread-pool of Workers that loop on WorkRequest{@literal } inputQueue
+ * and for each consumed WorkRequest Workers invoke
+ * WorkRequestProcessor.processItem() and output resulting
+ * WorkReport{@literal } to the outputQueue.
*/
public class ProducerConsumer {
private Log LOG = LogFactory.getLog(ProducerConsumer.class);
@@ -57,9 +58,9 @@ public class ProducerConsumer {
}
/**
- * Add another worker that will consume WorkRequest items from input
- * queue, process each item using supplied processor, and for every
- * processed item output WorkReport to output queue.
+ * Add another worker that will consume WorkRequest{@literal } items
+ * from input queue, process each item using supplied processor, and for
+ * every processed item output WorkReport{@literal } to output queue.
*
* @param processor Processor implementing WorkRequestProcessor interface.
*
@@ -102,7 +103,7 @@ public class ProducerConsumer {
/**
* Blocking put workRequest to ProducerConsumer input queue.
*
- * @param WorkRequest item to be processed.
+ * @param workRequest item to be processed.
*/
public void put(WorkRequest workRequest) {
boolean isDone = false;
@@ -120,7 +121,7 @@ public class ProducerConsumer {
/**
* Blocking take from ProducerConsumer output queue that can be interrupted.
*
- * @return WorkReport item returned by processor's processItem().
+ * @return item returned by processor's processItem().
*/
public WorkReport take() throws InterruptedException {
WorkReport report = outputQueue.take();
@@ -132,7 +133,7 @@ public class ProducerConsumer {
* Blocking take from ProducerConsumer output queue (catches exceptions and
* retries forever).
*
- * @return WorkReport item returned by processor's processItem().
+ * @return item returned by processor's processItem().
*/
public WorkReport blockingTake() {
while (true) {
diff --git a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkReport.java b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkReport.java
index 91c9805724a..43ce212525d 100644
--- a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkReport.java
+++ b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkReport.java
@@ -19,7 +19,7 @@
package org.apache.hadoop.tools.util;
/**
- * WorkReport is a simple container for items of class T and its
+ * WorkReport{@literal } is a simple container for items of class T and its
* corresponding retry counter that indicates how many times this item
* was previously attempted to be processed.
*/
diff --git a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkRequest.java b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkRequest.java
index 339a3ab0962..597dd8a3d24 100644
--- a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkRequest.java
+++ b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/util/WorkRequest.java
@@ -19,7 +19,7 @@
package org.apache.hadoop.tools.util;
/**
- * WorkRequest is a simple container for items of class T and its
+ * WorkRequest{@literal } is a simple container for items of class T and its
* corresponding retry counter that indicates how many times this item
* was previously attempted to be processed.
*/
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ApplicationReport.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ApplicationReport.java
index fa3b1e552b2..5de78587b97 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ApplicationReport.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ApplicationReport.java
@@ -404,7 +404,7 @@ public abstract class ApplicationReport {
public abstract boolean isUnmanagedApp();
/**
- * @param value true if RM should not manage the AM
+ * @param unmanagedApplication true if RM should not manage the AM
*/
@Public
@Unstable
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/server/api/ContainerType.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/server/api/ContainerType.java
index ffae8112266..df8a4c2521b 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/server/api/ContainerType.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/server/api/ContainerType.java
@@ -27,7 +27,6 @@ package org.apache.hadoop.yarn.server.api;
* {@link #APPLICATION_MASTER}
* {@link #TASK}
*
- *
*/
public enum ContainerType {
APPLICATION_MASTER, TASK
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/CommonNodeLabelsManager.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/CommonNodeLabelsManager.java
index 8cc37705206..deec6ab0b83 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/CommonNodeLabelsManager.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/CommonNodeLabelsManager.java
@@ -827,7 +827,7 @@ public class CommonNodeLabelsManager extends AbstractService {
/**
* Get mapping of labels info to nodes for specified set of labels.
*
- * @param nodelabels
+ * @param labels
* set of nodelabels for which labels to nodes mapping will be
* returned.
* @return labels to nodes map
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/records/NodeStatus.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/records/NodeStatus.java
index 24391bf92b2..7b8262f26b0 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/records/NodeStatus.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/records/NodeStatus.java
@@ -46,7 +46,7 @@ public abstract class NodeStatus {
* @param containerStatuses Status of the containers running in this node.
* @param keepAliveApplications Applications to keep alive.
* @param nodeHealthStatus Health status of the node.
- * @param containersUtilizations Utilization of the containers in this node.
+ * @param containersUtilization Utilization of the containers in this node.
* @param nodeUtilization Utilization of the node.
* @return New {@code NodeStatus} with the provided information.
*/
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/policy/OrderingPolicy.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/policy/OrderingPolicy.java
index e3f67ce5660..1616bb1c79f 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/policy/OrderingPolicy.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/policy/OrderingPolicy.java
@@ -107,7 +107,7 @@ public interface OrderingPolicy {
void demandUpdated(S schedulableEntity);
/**
- * Display information regarding configuration & status
+ * Display information regarding configuration and status
*/
public String getInfo();