Upgrade more dependencies/plugins (#1957)

* Update some plugins, including spotbugs
* Suppress new warnings from spotbugs that aren't important

* Update dependencies and review LICENSE/NOTICE (no change)
diff --git a/core/src/main/spotbugs/exclude-filter.xml b/core/src/main/spotbugs/exclude-filter.xml
index 77962ce..5cca39b 100644
--- a/core/src/main/spotbugs/exclude-filter.xml
+++ b/core/src/main/spotbugs/exclude-filter.xml
@@ -41,4 +41,8 @@
     <!-- https://github.com/spotbugs/spotbugs/issues/756 -->
     <Bug pattern="RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE" />
   </Match>
+  <Match>
+    <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+    <Bug pattern="JUA_DONT_ASSERT_INSTANCEOF_IN_TESTS" />
+  </Match>
 </FindBugsFilter>
diff --git a/hadoop-mapreduce/src/main/spotbugs/exclude-filter.xml b/hadoop-mapreduce/src/main/spotbugs/exclude-filter.xml
index 95744f7..575a7ee 100644
--- a/hadoop-mapreduce/src/main/spotbugs/exclude-filter.xml
+++ b/hadoop-mapreduce/src/main/spotbugs/exclude-filter.xml
@@ -28,4 +28,8 @@
     <!-- https://github.com/spotbugs/spotbugs/issues/756 -->
     <Bug pattern="RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE" />
   </Match>
+  <Match>
+    <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+    <Bug pattern="JUA_DONT_ASSERT_INSTANCEOF_IN_TESTS" />
+  </Match>
 </FindBugsFilter>
diff --git a/pom.xml b/pom.xml
index a7110fe..466f720 100644
--- a/pom.xml
+++ b/pom.xml
@@ -118,7 +118,7 @@
     <!-- bouncycastle version for test dependencies -->
     <bouncycastle.version>1.68</bouncycastle.version>
     <!-- Curator version -->
-    <curator.version>4.3.0</curator.version>
+    <curator.version>5.1.0</curator.version>
     <!-- relative path for Eclipse format; should override in child modules if necessary -->
     <eclipseFormatterStyle>${project.parent.basedir}/contrib/Eclipse-Accumulo-Codestyle.xml</eclipseFormatterStyle>
     <!-- avoid error shutting down built-in ForkJoinPool.commonPool() during exec:java tasks -->
@@ -163,7 +163,7 @@
       <dependency>
         <groupId>com.beust</groupId>
         <artifactId>jcommander</artifactId>
-        <version>1.78</version>
+        <version>1.81</version>
       </dependency>
       <dependency>
         <groupId>com.fasterxml</groupId>
@@ -191,12 +191,12 @@
       <dependency>
         <groupId>com.github.ben-manes.caffeine</groupId>
         <artifactId>caffeine</artifactId>
-        <version>2.8.1</version>
+        <version>3.0.0</version>
       </dependency>
       <dependency>
         <groupId>com.github.spotbugs</groupId>
         <artifactId>spotbugs-annotations</artifactId>
-        <version>4.2.1</version>
+        <version>4.2.2</version>
       </dependency>
       <dependency>
         <groupId>com.google.auto.service</groupId>
@@ -214,6 +214,12 @@
         <version>2.8.6</version>
       </dependency>
       <dependency>
+        <!-- converge transitive dependency version between guava and caffeine -->
+        <groupId>com.google.errorprone</groupId>
+        <artifactId>error_prone_annotations</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+      <dependency>
         <!-- this is a runtime dependency of guava, no longer included with guava as of 27.1 -->
         <groupId>com.google.guava</groupId>
         <artifactId>failureaccess</artifactId>
@@ -222,7 +228,7 @@
       <dependency>
         <groupId>com.google.guava</groupId>
         <artifactId>guava</artifactId>
-        <version>28.2-jre</version>
+        <version>30.1-jre</version>
       </dependency>
       <dependency>
         <groupId>com.google.protobuf</groupId>
@@ -242,12 +248,12 @@
       <dependency>
         <groupId>commons-codec</groupId>
         <artifactId>commons-codec</artifactId>
-        <version>1.14</version>
+        <version>1.15</version>
       </dependency>
       <dependency>
         <groupId>commons-io</groupId>
         <artifactId>commons-io</artifactId>
-        <version>2.7</version>
+        <version>2.8.0</version>
       </dependency>
       <dependency>
         <groupId>commons-logging</groupId>
@@ -353,7 +359,7 @@
       <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-lang3</artifactId>
-        <version>3.9</version>
+        <version>3.12.0</version>
       </dependency>
       <dependency>
         <groupId>org.apache.commons</groupId>
@@ -363,12 +369,12 @@
       <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-text</artifactId>
-        <version>1.8</version>
+        <version>1.9</version>
       </dependency>
       <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-vfs2</artifactId>
-        <version>2.6.0</version>
+        <version>2.7.0</version>
         <exclusions>
           <exclusion>
             <groupId>org.apache.hadoop</groupId>
@@ -499,7 +505,7 @@
       <dependency>
         <groupId>org.checkerframework</groupId>
         <artifactId>checker-qual</artifactId>
-        <version>3.1.0</version>
+        <version>3.11.0</version>
       </dependency>
       <dependency>
         <groupId>org.easymock</groupId>
@@ -509,7 +515,7 @@
       <dependency>
         <groupId>org.freemarker</groupId>
         <artifactId>freemarker</artifactId>
-        <version>2.3.30</version>
+        <version>2.3.31</version>
       </dependency>
       <dependency>
         <groupId>org.glassfish</groupId>
@@ -524,7 +530,7 @@
       <dependency>
         <groupId>org.javassist</groupId>
         <artifactId>javassist</artifactId>
-        <version>3.26.0-GA</version>
+        <version>3.27.0-GA</version>
       </dependency>
       <dependency>
         <groupId>org.jboss.logging</groupId>
@@ -670,7 +676,7 @@
         <plugin>
           <groupId>com.github.spotbugs</groupId>
           <artifactId>spotbugs-maven-plugin</artifactId>
-          <version>4.0.4</version>
+          <version>4.2.0</version>
           <configuration>
             <xmlOutput>true</xmlOutput>
             <effort>Max</effort>
@@ -690,7 +696,7 @@
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-checkstyle-plugin</artifactId>
-          <version>3.1.1</version>
+          <version>3.1.2</version>
         </plugin>
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
@@ -701,7 +707,7 @@
         <plugin>
           <groupId>com.github.ekryd.sortpom</groupId>
           <artifactId>sortpom-maven-plugin</artifactId>
-          <version>2.12.0</version>
+          <version>2.13.1</version>
           <configuration>
             <predefinedSortOrder>recommended_2008_06</predefinedSortOrder>
             <createBackupFile>false</createBackupFile>
@@ -1100,7 +1106,7 @@
           <dependency>
             <groupId>com.puppycrawl.tools</groupId>
             <artifactId>checkstyle</artifactId>
-            <version>8.40</version>
+            <version>8.41</version>
           </dependency>
         </dependencies>
         <executions>
diff --git a/start/src/main/spotbugs/exclude-filter.xml b/start/src/main/spotbugs/exclude-filter.xml
new file mode 100644
index 0000000..96af6bb
--- /dev/null
+++ b/start/src/main/spotbugs/exclude-filter.xml
@@ -0,0 +1,30 @@
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+-->
+<FindBugsFilter>
+  <!--
+    DO NOT exclude anything other than generated files here. Other files
+    can be excluded inline by adding the @SuppressFBWarnings annotation.
+  -->
+  <Match>
+    <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+    <Bug pattern="JUA_DONT_ASSERT_INSTANCEOF_IN_TESTS" />
+  </Match>
+</FindBugsFilter>
diff --git a/test/src/main/spotbugs/exclude-filter.xml b/test/src/main/spotbugs/exclude-filter.xml
index ec33072..09a7428 100644
--- a/test/src/main/spotbugs/exclude-filter.xml
+++ b/test/src/main/spotbugs/exclude-filter.xml
@@ -36,4 +36,8 @@
     <!-- paths in test code are provided by user input -->
     <Bug pattern="PATH_TRAVERSAL_IN" />
   </Match>
+  <Match>
+    <!-- More convenient to ignore these everywhere, because it's very common and unimportant -->
+    <Bug pattern="JUA_DONT_ASSERT_INSTANCEOF_IN_TESTS" />
+  </Match>
 </FindBugsFilter>