You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sm...@apache.org on 2015/04/06 04:22:15 UTC

[3/5] mahout git commit: MAHOUT-1652: Java 7 upgrade, this closes apache/mahout#112

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java b/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
index aec5e39..040c8e4 100644
--- a/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
+++ b/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
@@ -20,12 +20,10 @@ package org.apache.mahout.text;
 import java.io.File;
 import java.io.IOException;
 import java.io.OutputStreamWriter;
+import java.util.HashMap;
 import java.util.Map;
 
-import com.google.common.base.Charsets;
-import com.google.common.collect.Maps;
-import com.google.common.io.Closeables;
-
+import org.apache.commons.io.Charsets;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
@@ -162,13 +160,10 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
 
   private static void createFilesFromArrays(Configuration conf, Path inputDir, String[][] data) throws IOException {
     FileSystem fs = FileSystem.get(conf);
-    OutputStreamWriter writer;
     for (String[] aData : data) {
-      writer = new OutputStreamWriter(fs.create(new Path(inputDir, aData[0])), Charsets.UTF_8);
-      try {
+      try (OutputStreamWriter writer =
+               new OutputStreamWriter(fs.create(new Path(inputDir, aData[0])), Charsets.UTF_8)){
         writer.write(aData[1]);
-      } finally {
-        Closeables.close(writer, false);
       }
     }
   }
@@ -182,21 +177,15 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     String currentRecursiveDir = inputDir.toString();
 
     for (String[] aData : data) {
-      OutputStreamWriter writer;
-
       currentRecursiveDir += "/" + aData[0];
       File subDir = new File(currentRecursiveDir);
       subDir.mkdir();
 
       curPath = new Path(subDir.toString(), "file.txt");
-      writer = new OutputStreamWriter(fs.create(curPath), Charsets.UTF_8);
-
       logger.info("Created file: {}", curPath.toString());
 
-      try {
+      try (OutputStreamWriter writer = new OutputStreamWriter(fs.create(curPath), Charsets.UTF_8)){
         writer.write(aData[1]);
-      } finally {
-        Closeables.close(writer, false);
       }
     }
   }
@@ -212,23 +201,20 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     assertEquals(1, fileStatuses.length); // only one
     assertEquals("chunk-0", fileStatuses[0].getPath().getName());
 
-    Map<String, String> fileToData = Maps.newHashMap();
+    Map<String, String> fileToData = new HashMap<>();
     for (String[] aData : data) {
       fileToData.put(prefix + Path.SEPARATOR + aData[0], aData[1]);
     }
 
     // read a chunk to check content
-    SequenceFileIterator<Text, Text> iterator =
-      new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration);
-    try {
+    try (SequenceFileIterator<Text, Text> iterator =
+             new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration)){
       while (iterator.hasNext()) {
         Pair<Text, Text> record = iterator.next();
         String retrievedData = fileToData.get(record.getFirst().toString().trim());
         assertNotNull(retrievedData);
         assertEquals(retrievedData, record.getSecond().toString().trim());
       }
-    } finally {
-      Closeables.close(iterator, true);
     }
   }
 
@@ -246,7 +232,7 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     assertEquals("chunk-0", fileStatuses[0].getPath().getName());
 
 
-    Map<String, String> fileToData = Maps.newHashMap();
+    Map<String, String> fileToData = new HashMap<>();
     String currentPath = prefix;
     for (String[] aData : data) {
       currentPath += Path.SEPARATOR + aData[0];
@@ -254,9 +240,8 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     }
 
     // read a chunk to check content
-    SequenceFileIterator<Text, Text> iterator =
-        new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration);
-    try {
+    try (SequenceFileIterator<Text, Text> iterator =
+             new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration)) {
       while (iterator.hasNext()) {
         Pair<Text, Text> record = iterator.next();
         String retrievedData = fileToData.get(record.getFirst().toString().trim());
@@ -266,8 +251,6 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
         assertEquals(retrievedData, record.getSecond().toString().trim());
         System.out.printf(">>> k: %s, v: %s\n", record.getFirst().toString(), record.getSecond().toString());
       }
-    } finally {
-      Closeables.close(iterator, true);
     }
   }
 
@@ -279,16 +262,15 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     FileStatus[] fileStatuses = fs.listStatus(outputDir.suffix("/part-m-00000"), PathFilters.logsCRCFilter());
     assertEquals(1, fileStatuses.length); // only one
     assertEquals("part-m-00000", fileStatuses[0].getPath().getName());
-    Map<String, String> fileToData = Maps.newHashMap();
+    Map<String, String> fileToData = new HashMap<>();
     for (String[] aData : data) {
       System.out.printf("map.put: %s %s\n", prefix + Path.SEPARATOR + aData[0], aData[1]);
       fileToData.put(prefix + Path.SEPARATOR + aData[0], aData[1]);
     }
 
     // read a chunk to check content
-    SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
-      fileStatuses[0].getPath(), true, conf);
-    try {
+    try (SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
+        fileStatuses[0].getPath(), true, conf)) {
       while (iterator.hasNext()) {
         Pair<Text, Text> record = iterator.next();
         String retrievedData = fileToData.get(record.getFirst().toString().trim());
@@ -297,8 +279,6 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
         assertNotNull(retrievedData);
         assertEquals(retrievedData, record.getSecond().toString().trim());
       }
-    } finally {
-      Closeables.close(iterator, true);
     }
   }
 
@@ -310,7 +290,7 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     FileStatus[] fileStatuses = fs.listStatus(outputDir.suffix("/part-m-00000"), PathFilters.logsCRCFilter());
     assertEquals(1, fileStatuses.length); // only one
     assertEquals("part-m-00000", fileStatuses[0].getPath().getName());
-    Map<String, String> fileToData = Maps.newHashMap();
+    Map<String, String> fileToData = new HashMap<>();
     String currentPath = prefix;
 
     for (String[] aData : data) {
@@ -319,9 +299,8 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
     }
 
     // read a chunk to check content
-    SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
-      fileStatuses[0].getPath(), true, configuration);
-    try {
+    try (SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
+        fileStatuses[0].getPath(), true, configuration)){
       while (iterator.hasNext()) {
         Pair<Text, Text> record = iterator.next();
         System.out.printf("MR-Recur > Trying to check: %s\n", record.getFirst().toString().trim());
@@ -329,9 +308,6 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
         assertNotNull(retrievedData);
         assertEquals(retrievedData, record.getSecond().toString().trim());
       }
-    } finally {
-      Closeables.close(iterator, true);
     }
   }
 }
-

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java b/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
index 5a4f9fa..55d6e0f 100644
--- a/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
+++ b/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
@@ -22,7 +22,6 @@ import org.apache.lucene.document.IntField;
 import org.apache.lucene.document.StringField;
 import org.apache.lucene.document.TextField;
 
-
 /**
  * Document with numeric field.
  */

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java b/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
index 72d60ec..7ffa690 100644
--- a/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
@@ -23,17 +23,14 @@ import java.io.OutputStreamWriter;
 import java.io.Writer;
 import java.nio.charset.Charset;
 
-import com.google.common.base.Charsets;
 import com.google.common.io.Closeables;
-
+import org.apache.commons.io.Charsets;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.io.IOUtils;
 import org.apache.hadoop.io.IntWritable;
 import org.apache.hadoop.io.SequenceFile;
 import org.apache.hadoop.io.Text;
-import org.apache.hadoop.io.Writable;
 import org.apache.hadoop.util.ToolRunner;
 import org.apache.mahout.classifier.ClassifierData;
 import org.apache.mahout.common.MahoutTestCase;
@@ -68,7 +65,7 @@ public final class SplitInputTest extends MahoutTestCase {
 
     super.setUp();
 
-    countMap = new OpenObjectIntHashMap<String>();
+    countMap = new OpenObjectIntHashMap<>();
 
     charset = Charsets.UTF_8;
     tempSequenceDirectory = getTestTempFilePath("tmpsequence");
@@ -192,15 +189,13 @@ public final class SplitInputTest extends MahoutTestCase {
    * @param path path for test SequenceFile
    * @param testPoints number of records in test SequenceFile
    */
-  private void writeVectorSequenceFile(Path path, int testPoints)
-      throws IOException {
+  private void writeVectorSequenceFile(Path path, int testPoints) throws IOException {
     Path tempSequenceFile = new Path(path, "part-00000");
     Configuration conf = getConfiguration();
     IntWritable key = new IntWritable();
     VectorWritable value = new VectorWritable();
-    SequenceFile.Writer writer = null;
-    try {
-      writer = SequenceFile.createWriter(fs, conf, tempSequenceFile, IntWritable.class, VectorWritable.class);
+    try (SequenceFile.Writer writer =
+             SequenceFile.createWriter(fs, conf, tempSequenceFile, IntWritable.class, VectorWritable.class)) {
       for (int i = 0; i < testPoints; i++) {
         key.set(i);
         Vector v = new SequentialAccessSparseVector(4);
@@ -208,8 +203,6 @@ public final class SplitInputTest extends MahoutTestCase {
         value.set(v);
         writer.append(key, value);
       }
-    } finally {
-      IOUtils.closeStream(writer);
     }
   }
 
@@ -223,18 +216,12 @@ public final class SplitInputTest extends MahoutTestCase {
     Configuration conf = getConfiguration();
     Text key = new Text();
     Text value = new Text();
-    SequenceFile.Writer writer = null;
-    try {
-      writer =
-          SequenceFile.createWriter(fs, conf, tempSequenceFile,
-              Text.class, Text.class);
+    try (SequenceFile.Writer writer = SequenceFile.createWriter(fs, conf, tempSequenceFile, Text.class, Text.class)){
       for (int i = 0; i < testPoints; i++) {
         key.set(Integer.toString(i));
         value.set("Line " + i);
         writer.append(key, value);
       }
-    } finally {
-      IOUtils.closeStream(writer);
     }
   }
 
@@ -243,7 +230,7 @@ public final class SplitInputTest extends MahoutTestCase {
    * @param sequenceFilePath path to SequenceFile
    */
   private void displaySequenceFile(Path sequenceFilePath) throws IOException {
-    for (Pair<?,?> record : new SequenceFileIterable<Writable,Writable>(sequenceFilePath, true, getConfiguration())) {
+    for (Pair<?,?> record : new SequenceFileIterable<>(sequenceFilePath, true, getConfiguration())) {
       System.out.println(record.getFirst() + "\t" + record.getSecond());
     }
   }
@@ -255,7 +242,7 @@ public final class SplitInputTest extends MahoutTestCase {
    */
   private int getNumberRecords(Path sequenceFilePath) throws IOException {
     int numberRecords = 0;
-    for (Object value : new SequenceFileValueIterable<Writable>(sequenceFilePath, true, getConfiguration())) {
+    for (Object value : new SequenceFileValueIterable<>(sequenceFilePath, true, getConfiguration())) {
       numberRecords++;
     }
     return numberRecords;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java b/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
index 329b590..98f5ca8 100644
--- a/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
+++ b/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
@@ -17,9 +17,9 @@
 
 package org.apache.mahout.utils;
 
+import java.util.ArrayList;
 import java.util.List;
 
-import com.google.common.collect.Lists;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.io.IntWritable;
 import org.apache.hadoop.mapreduce.Reducer;
@@ -66,7 +66,7 @@ public class TestConcatenateVectorsJob extends MahoutTestCase {
     
     for(int i = 0; i < 3; i++) {
       double[] values = DATA_A[i];
-      List<VectorWritable> vwList = Lists.newArrayList();
+      List<VectorWritable> vwList = new ArrayList<>();
       if (values.length > 0) {
         Vector v = new DenseVector(values);
         VectorWritable vw = new VectorWritable();

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java b/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
index 77307bb..c519f85 100644
--- a/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
@@ -17,15 +17,15 @@
 
 package org.apache.mahout.utils.email;
 
-import com.google.common.base.Charsets;
-import org.apache.mahout.common.MahoutTestCase;
-import org.junit.Test;
-
 import java.io.File;
 import java.io.StringWriter;
 import java.net.URL;
 import java.util.regex.Pattern;
 
+import org.apache.commons.io.Charsets;
+import org.apache.mahout.common.MahoutTestCase;
+import org.junit.Test;
+
 public final class MailProcessorTest extends MahoutTestCase {
 
   @Test

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java b/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
index 9df4930..37efc01 100644
--- a/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
@@ -26,8 +26,7 @@ import java.nio.ByteBuffer;
 import java.nio.CharBuffer;
 import java.nio.charset.CharsetEncoder;
 
-import com.google.common.base.Charsets;
-
+import org.apache.commons.io.Charsets;
 import org.apache.hadoop.util.bloom.BloomFilter;
 import org.apache.hadoop.util.bloom.Filter;
 import org.apache.hadoop.util.bloom.Key;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java b/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
index 728a78c..d569acf 100644
--- a/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
@@ -60,7 +60,7 @@ public final class RegexMapperTest extends MahoutTestCase {
     conf.set(RegexMapper.REGEX, "(\\d+)\\.(\\d+)\\.(\\d+)");
     conf.set(RegexMapper.TRANSFORMER_CLASS, URLDecodeTransformer.class.getName());
     conf.setStrings(RegexMapper.GROUP_MATCHERS, "1", "3");
-    DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<LongWritable, Text>();
+    DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<>();
     Mapper<LongWritable, Text, LongWritable, Text>.Context mapContext = DummyRecordWriter
             .build(mapper, conf, mapWriter);
 
@@ -83,7 +83,7 @@ public final class RegexMapperTest extends MahoutTestCase {
     conf.set(RegexMapper.REGEX, "(?<=(\\?|&)q=).*?(?=&|$)");
     conf.set(RegexMapper.TRANSFORMER_CLASS, URLDecodeTransformer.class.getName());
     conf.set(RegexMapper.FORMATTER_CLASS, FPGFormatter.class.getName());
-    DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<LongWritable, Text>();
+    DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<>();
     Mapper<LongWritable, Text, LongWritable, Text>.Context mapContext = DummyRecordWriter
             .build(mapper, conf, mapWriter);
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java b/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
index 0599028..8ae10a5 100644
--- a/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
@@ -17,14 +17,14 @@
 
 package org.apache.mahout.utils.regex;
 
-import com.google.common.collect.Lists;
-import org.apache.mahout.common.MahoutTestCase;
-import org.junit.Test;
-
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.regex.Pattern;
 
+import org.apache.mahout.common.MahoutTestCase;
+import org.junit.Test;
+
 public final class RegexUtilsTest extends MahoutTestCase {
 
   static final String[] TEST_STRS = {
@@ -53,7 +53,7 @@ public final class RegexUtilsTest extends MahoutTestCase {
     assertEquals(res, "import statement 1", res);
 
     pattern = Pattern.compile("(start=1) HTTP");
-    Collection<Integer> groupsToKeep = Lists.newArrayList();
+    Collection<Integer> groupsToKeep = new ArrayList<>();
     groupsToKeep.add(1);
     res = RegexUtils.extract(line, pattern, groupsToKeep, " ", RegexUtils.IDENTITY_TRANSFORMER);
     assertEquals(res, "start=1", res);

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
index 3fcfbf8..c55fd8d 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
@@ -17,9 +17,8 @@
 
 package org.apache.mahout.utils.vectors;
 
-import com.google.common.collect.Iterables;
+import java.util.Random;
 
-import com.google.common.io.Closeables;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
@@ -33,8 +32,6 @@ import org.apache.mahout.math.Vector;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.util.Random;
-
 public final class VectorHelperTest extends MahoutTestCase {
 
   private static final int NUM_DOCS = 100;
@@ -52,28 +49,24 @@ public final class VectorHelperTest extends MahoutTestCase {
 
     inputPathOne = getTestTempFilePath("documents/docs-one.file");
     FileSystem fs = FileSystem.get(inputPathOne.toUri(), conf);
-    SequenceFile.Writer writer = new SequenceFile.Writer(fs, conf, inputPathOne, Text.class, IntWritable.class);
-    try {
+    try (SequenceFile.Writer writer =
+             new SequenceFile.Writer(fs, conf, inputPathOne, Text.class, IntWritable.class)) {
       Random rd = RandomUtils.getRandom();
       for (int i = 0; i < NUM_DOCS; i++) {
         // Make all indices higher than dictionary size
         writer.append(new Text("Document::ID::" + i), new IntWritable(NUM_DOCS + rd.nextInt(NUM_DOCS)));
       }
-    } finally {
-      Closeables.close(writer, false);
     }
 
     inputPathTwo = getTestTempFilePath("documents/docs-two.file");
     fs = FileSystem.get(inputPathTwo.toUri(), conf);
-    writer = new SequenceFile.Writer(fs, conf, inputPathTwo, Text.class, IntWritable.class);
-    try {
+    try (SequenceFile.Writer writer =
+             new SequenceFile.Writer(fs, conf, inputPathTwo, Text.class, IntWritable.class)) {
       Random rd = RandomUtils.getRandom();
       for (int i = 0; i < NUM_DOCS; i++) {
         // Keep indices within number of documents
         writer.append(new Text("Document::ID::" + i), new IntWritable(rd.nextInt(NUM_DOCS)));
       }
-    } finally {
-      Closeables.close(writer, false);
     }
   }
 
@@ -120,7 +113,7 @@ public final class VectorHelperTest extends MahoutTestCase {
     // check if sizeOfNonZeroElementsInVector < maxEntries
     assertTrue(VectorHelper.topEntries(v, 9).size() < 9);
     // check if sizeOfNonZeroElementsInVector > maxEntries
-    assertTrue(VectorHelper.topEntries(v, 5).size() < Iterables.size(v.nonZeroes()));
+    assertTrue(VectorHelper.topEntries(v, 5).size() < v.getNumNonZeroElements());
   }
 
   @Test

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
index bf7415f..4c7f17a 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
@@ -25,9 +25,8 @@ import java.util.Iterator;
 import java.util.Locale;
 import java.util.Map;
 
-import com.google.common.base.Charsets;
 import com.google.common.io.Resources;
-
+import org.apache.commons.io.Charsets;
 import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.RandomAccessSparseVector;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
index 693a8db..7e7623e 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
@@ -18,9 +18,8 @@ package org.apache.mahout.utils.vectors.arff;
 import java.io.IOException;
 import java.io.StringWriter;
 
-import com.google.common.base.Charsets;
 import com.google.common.io.Resources;
-
+import org.apache.commons.io.Charsets;
 import org.apache.mahout.common.MahoutTestCase;
 import org.junit.Test;
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
index 1e3b8f8..2867640 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
@@ -21,7 +21,6 @@ import org.junit.Test;
 
 import java.util.Map;
 
-
 public class MapBackedARFFModelTest extends MahoutTestCase {
 
   @Test

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
index ca3781b..e76cf70 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
@@ -5,9 +5,9 @@
  * 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
- *
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
  * 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.
@@ -22,8 +22,6 @@ import java.io.StringReader;
 import java.io.StringWriter;
 import java.util.Iterator;
 
-import com.google.common.io.Closeables;
-
 import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.Vector;
 import org.apache.mahout.utils.vectors.RandomVectorIterable;
@@ -37,19 +35,17 @@ public class CSVVectorIteratorTest extends MahoutTestCase {
   public void testCount() throws Exception {
 
     StringWriter sWriter = new StringWriter();
-    TextualVectorWriter writer = new TextualVectorWriter(sWriter) {
+    try (TextualVectorWriter writer = new TextualVectorWriter(sWriter) {
       @Override
       public void write(Vector vector) throws IOException {
         String vecStr = VectorHelper.vectorToCSVString(vector, false);
         getWriter().write(vecStr);
       }
-    };
-    try {
+    }) {
       Iterable<Vector> iter = new RandomVectorIterable(50);
       writer.write(iter);
-    } finally {
-      Closeables.close(writer, false);
     }
+
     Iterator<Vector> csvIter = new CSVVectorIterator(new StringReader(sWriter.getBuffer().toString()));
     int count = 0;
     while (csvIter.hasNext()) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
index 96b2704..e2f7032 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
@@ -18,11 +18,9 @@
 package org.apache.mahout.utils.vectors.io;
 
 import java.io.StringWriter;
+import java.util.ArrayList;
 import java.util.Collection;
 
-import com.google.common.collect.Lists;
-import com.google.common.io.Closeables;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
@@ -44,11 +42,8 @@ public final class VectorWriterTest extends MahoutTestCase {
     Configuration conf = getConfiguration();
     FileSystem fs = FileSystem.get(conf);
     SequenceFile.Writer seqWriter = new SequenceFile.Writer(fs, conf, path, LongWritable.class, VectorWritable.class);
-    SequenceFileVectorWriter writer = new SequenceFileVectorWriter(seqWriter);
-    try {
+    try (SequenceFileVectorWriter writer = new SequenceFileVectorWriter(seqWriter)) {
       writer.write(new RandomVectorIterable(50));
-    } finally {
-      Closeables.close(writer, false);
     }
 
     long count = HadoopUtil.countRecords(path, conf);
@@ -58,14 +53,11 @@ public final class VectorWriterTest extends MahoutTestCase {
   @Test
   public void testTextOutputSize() throws Exception {
     StringWriter strWriter = new StringWriter();
-    VectorWriter writer = new TextualVectorWriter(strWriter);
-    try {
-      Collection<Vector> vectors = Lists.newArrayList();
+    try (VectorWriter writer = new TextualVectorWriter(strWriter)) {
+      Collection<Vector> vectors = new ArrayList<>();
       vectors.add(new DenseVector(new double[]{0.3, 1.5, 4.5}));
       vectors.add(new DenseVector(new double[]{1.3, 1.5, 3.5}));
       writer.write(vectors);
-    } finally {
-      Closeables.close(writer, false);
     }
     String buffer = strWriter.toString();
     assertNotNull(buffer);

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/QRDecomposition.java b/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
index 732529a..5a3d918 100644
--- a/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
+++ b/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
@@ -27,7 +27,6 @@ import org.apache.mahout.math.function.Functions;
 
 import java.util.Locale;
 
-
 /**
  For an <tt>m x n</tt> matrix <tt>A</tt> with <tt>m >= n</tt>, the QR decomposition is an <tt>m x n</tt>
  orthogonal matrix <tt>Q</tt> and an <tt>n x n</tt> upper triangular matrix <tt>R</tt> so that

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java b/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
index ecb34c6..2abff10 100644
--- a/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
+++ b/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
@@ -589,7 +589,7 @@ public class SingularValueDecomposition implements java.io.Serializable {
   }
   
   /**
-   * @parameter minSingularValue
+   * @param minSingularValue
    * minSingularValue - value below which singular values are ignored (a 0 or negative
    * value implies all singular value will be used)
    * @return Returns the n × n covariance matrix.

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java b/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
index 6a75716..c678b35 100644
--- a/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
+++ b/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
@@ -42,8 +42,8 @@ public class SparseColumnMatrix extends AbstractMatrix {
   /**
    * Construct a matrix of the given cardinality
    *
-   * @param rows
-   * @param columns
+   * @param rows # of rows
+   * @param columns # of columns
    */
   public SparseColumnMatrix(int rows, int columns) {
     super(rows, columns);

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
index fe3d11c..5b5cc9b 100644
--- a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
+++ b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
@@ -17,21 +17,21 @@
 
 package org.apache.mahout.math.decomposer.hebbian;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Properties;
 import java.util.Random;
 
-import com.google.common.collect.Lists;
 import org.apache.mahout.common.RandomUtils;
 import org.apache.mahout.math.DenseMatrix;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.Matrix;
+import org.apache.mahout.math.Vector;
 import org.apache.mahout.math.decomposer.AsyncEigenVerifier;
 import org.apache.mahout.math.decomposer.EigenStatus;
 import org.apache.mahout.math.decomposer.SingularVectorVerifier;
-import org.apache.mahout.math.function.TimesFunction;
-import org.apache.mahout.math.Vector;
 import org.apache.mahout.math.function.PlusMult;
+import org.apache.mahout.math.function.TimesFunction;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -171,7 +171,7 @@ public class HebbianSolver {
                              int desiredRank) {
     int cols = corpus.numCols();
     Matrix eigens = new DenseMatrix(desiredRank, cols);
-    List<Double> eigenValues = Lists.newArrayList();
+    List<Double> eigenValues = new ArrayList<>();
     log.info("Finding {} singular vectors of matrix with {} rows, via Hebbian", desiredRank, corpus.numRows());
     /*
      * The corpusProjections matrix is a running cache of the residual projection of each corpus vector against all
@@ -278,7 +278,7 @@ public class HebbianSolver {
       currentPseudoEigen.assign(previousEigen, new PlusMult(-state.getHelperVector().get(i)));
       state.getHelperVector().set(i, 0);
     }
-    if (DEBUG && currentPseudoEigen.norm(2) > 0) {
+    if (currentPseudoEigen.norm(2) > 0) {
       for (int i = 0; i < state.getNumEigensProcessed(); i++) {
         Vector previousEigen = previousEigens.viewRow(i);
         log.info("dot with previous: {}", previousEigen.dot(currentPseudoEigen) / currentPseudoEigen.norm(2));

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
index d1fcb6a..af6c2ef 100644
--- a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
+++ b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
@@ -17,9 +17,9 @@
 
 package org.apache.mahout.math.decomposer.hebbian;
 
+import java.util.ArrayList;
 import java.util.List;
 
-import com.google.common.collect.Lists;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.Matrix;
 import org.apache.mahout.math.Vector;
@@ -44,7 +44,7 @@ public class TrainingState {
     trainingIndex = 0;
     helperVector = new DenseVector(eigens.numRows());
     firstPass = true;
-    statusProgress = Lists.newArrayList();
+    statusProgress = new ArrayList<>();
     activationNumerator = 0;
     activationDenominatorSquared = 0;
     numEigensProcessed = 0;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java b/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
index 336449c..d2c8434 100644
--- a/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
+++ b/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
@@ -18,10 +18,10 @@
 package org.apache.mahout.math.stats;
 
 import com.google.common.base.Preconditions;
-import com.google.common.collect.Lists;
 import com.google.common.collect.Multiset;
 import com.google.common.collect.Ordering;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.PriorityQueue;
@@ -159,7 +159,7 @@ public final class LogLikelihood {
         return Double.compare(tScoredItem.score, tScoredItem1.score);
       }
     };
-    Queue<ScoredItem<T>> best = new PriorityQueue<ScoredItem<T>>(maxReturn + 1, byScoreAscending);
+    Queue<ScoredItem<T>> best = new PriorityQueue<>(maxReturn + 1, byScoreAscending);
 
     for (T t : a.elementSet()) {
       compareAndAdd(a, b, maxReturn, threshold, totalA, totalB, best, t);
@@ -175,7 +175,7 @@ public final class LogLikelihood {
       }
     }
 
-    List<ScoredItem<T>> r = Lists.newArrayList(best);
+    List<ScoredItem<T>> r = new ArrayList<>(best);
     Collections.sort(r, byScoreAscending.reverse());
     return r;
   }
@@ -192,7 +192,7 @@ public final class LogLikelihood {
     int kB = b.count(t);
     double score = rootLogLikelihoodRatio(kA, totalA - kA, kB, totalB - kB);
     if (score >= threshold) {
-      ScoredItem<T> x = new ScoredItem<T>(t, score);
+      ScoredItem<T> x = new ScoredItem<>(t, score);
       best.add(x);
       while (best.size() > maxReturn) {
         best.poll();

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
----------------------------------------------------------------------
diff --git a/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java b/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
index 29ef6f8..973cee5 100644
--- a/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
+++ b/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
@@ -23,7 +23,7 @@ import org.junit.Test;
 import java.util.Random;
 
 /**
- * Tests {@linkRandomUtils}.
+ * Tests {@link RandomUtils}.
  */
 public final class RandomUtilsTest extends MahoutTestCase {
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
index 947204d..bc832aa 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
@@ -20,9 +20,9 @@ package org.apache.mahout.cf.taste.hadoop;
 import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 
-import com.google.common.collect.Lists;
 import org.apache.hadoop.io.Writable;
 import org.apache.mahout.cf.taste.impl.recommender.GenericRecommendedItem;
 import org.apache.mahout.cf.taste.recommender.RecommendedItem;
@@ -65,7 +65,7 @@ public final class RecommendedItemsWritable implements Writable {
   @Override
   public void readFields(DataInput in) throws IOException {
     int size = in.readInt();
-    recommended = Lists.newArrayListWithCapacity(size);
+    recommended = new ArrayList<>(size);
     for (int i = 0; i < size; i++) {
       long itemID = Varint.readSignedVarLong(in);
       float value = in.readFloat();

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
index 0f9ea75..8f563b0 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
@@ -17,13 +17,13 @@
 
 package org.apache.mahout.cf.taste.hadoop;
 
-import com.google.common.collect.Lists;
-import org.apache.lucene.util.PriorityQueue;
-import org.apache.mahout.cf.taste.recommender.RecommendedItem;
-
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.lucene.util.PriorityQueue;
+import org.apache.mahout.cf.taste.recommender.RecommendedItem;
+
 public class TopItemsQueue extends PriorityQueue<MutableRecommendedItem> {
 
   private static final long SENTINEL_ID = Long.MIN_VALUE;
@@ -36,7 +36,7 @@ public class TopItemsQueue extends PriorityQueue<MutableRecommendedItem> {
   }
 
   public List<RecommendedItem> getTopItems() {
-    List<RecommendedItem> recommendedItems = Lists.newArrayListWithCapacity(maxSize);
+    List<RecommendedItem> recommendedItems = new ArrayList<>(maxSize);
     while (size() > 0) {
       MutableRecommendedItem topItem = pop();
       // filter out "sentinel" objects necessary for maintaining an efficient priority queue

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
index c5ccf38..1c07b67 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
@@ -17,9 +17,12 @@
 
 package org.apache.mahout.cf.taste.hadoop.als;
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
 import com.google.common.base.Preconditions;
-import com.google.common.collect.Lists;
-import com.google.common.io.Closeables;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.LocalFileSystem;
@@ -37,10 +40,6 @@ import org.apache.mahout.math.VectorWritable;
 import org.apache.mahout.math.als.AlternatingLeastSquaresSolver;
 import org.apache.mahout.math.map.OpenIntObjectHashMap;
 
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.List;
-
 final class ALS {
 
   private ALS() {}
@@ -65,15 +64,10 @@ final class ALS {
     LocalFileSystem localFs = FileSystem.getLocal(conf);
 
     for (Path cachedFile : cachedFiles) {
-
-      SequenceFile.Reader reader = null;
-      try {
-        reader = new SequenceFile.Reader(localFs, cachedFile, conf);
+      try (SequenceFile.Reader reader = new SequenceFile.Reader(localFs, cachedFile, conf)){
         while (reader.next(rowIndex, row)) {
           featureMatrix.put(rowIndex.get(), row.get());
         }
-      } finally {
-        Closeables.close(reader, true);
       }
     }
 
@@ -96,7 +90,7 @@ final class ALS {
     double lambda, int numFeatures) {
     Vector ratings = ratingsWritable.get();
 
-    List<Vector> featureVectors = Lists.newArrayListWithCapacity(ratings.getNumNondefaultElements());
+    List<Vector> featureVectors = new ArrayList<>(ratings.getNumNondefaultElements());
     for (Vector.Element e : ratings.nonZeroes()) {
       int index = e.index();
       featureVectors.add(uOrM.get(index));

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
index 3048b77..e69053c 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
@@ -23,8 +23,7 @@ import java.io.OutputStreamWriter;
 import java.util.List;
 import java.util.Map;
 
-import com.google.common.base.Charsets;
-import com.google.common.io.Closeables;
+import org.apache.commons.io.Charsets;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
@@ -104,17 +103,12 @@ public class FactorizationEvaluator extends AbstractJob {
       return -1;
     }
 
-    BufferedWriter writer  = null;
-    try {
-      FileSystem fs = FileSystem.get(getOutputPath().toUri(), getConf());
-      FSDataOutputStream outputStream = fs.create(getOutputPath("rmse.txt"));
+    FileSystem fs = FileSystem.get(getOutputPath().toUri(), getConf());
+    FSDataOutputStream outputStream = fs.create(getOutputPath("rmse.txt"));
+    try (BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(outputStream, Charsets.UTF_8))){
       double rmse = computeRmse(errors);
-      writer = new BufferedWriter(new OutputStreamWriter(outputStream, Charsets.UTF_8));
       writer.write(String.valueOf(rmse));
-    } finally {
-      Closeables.close(writer, false);
     }
-
     return 0;
   }
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
index 624a8c4..2ce9b61 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
@@ -23,7 +23,6 @@ import java.util.Map;
 import java.util.Random;
 
 import com.google.common.base.Preconditions;
-import com.google.common.io.Closeables;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.filecache.DistributedCache;
 import org.apache.hadoop.fs.FileStatus;
@@ -218,11 +217,9 @@ public class ParallelALSFactorizationJob extends AbstractJob {
     Random random = RandomUtils.getRandom();
 
     FileSystem fs = FileSystem.get(pathToM(-1).toUri(), getConf());
-    SequenceFile.Writer writer = null;
-    try {
-      writer = new SequenceFile.Writer(fs, getConf(), new Path(pathToM(-1), "part-m-00000"), IntWritable.class,
-          VectorWritable.class);
-
+    try (SequenceFile.Writer writer =
+             new SequenceFile.Writer(fs, getConf(), new Path(pathToM(-1), "part-m-00000"),
+                 IntWritable.class, VectorWritable.class)) {
       IntWritable index = new IntWritable();
       VectorWritable featureVector = new VectorWritable();
 
@@ -236,8 +233,6 @@ public class ParallelALSFactorizationJob extends AbstractJob {
         featureVector.set(row);
         writer.append(index, featureVector);
       }
-    } finally {
-      Closeables.close(writer, false);
     }
   }
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
index b8cf6bb..7797fe9 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
@@ -17,12 +17,12 @@
 
 package org.apache.mahout.cf.taste.hadoop.item;
 
-import com.google.common.collect.Maps;
-import com.google.common.io.Closeables;
 import java.io.IOException;
 import java.io.InputStream;
+import java.util.HashMap;
 import java.util.Map;
 import java.util.regex.Pattern;
+
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
 import org.apache.mahout.cf.taste.impl.common.FastIDSet;
@@ -142,10 +142,9 @@ public class IDReader {
   }
 
   private Map<Long, FastIDSet> readUserItemFilter(String pathString) throws IOException {
-    Map<Long, FastIDSet> result = Maps.newHashMap();
-    InputStream in = openFile(pathString);
+    Map<Long, FastIDSet> result = new HashMap<>();
 
-    try {
+    try (InputStream in = openFile(pathString)) {
       for (String line : new FileLineIterable(in)) {
         try {
           String[] tokens = SEPARATOR.split(line);
@@ -157,8 +156,6 @@ public class IDReader {
           log.warn("userItemFile line ignored: {}", line);
         }
       }
-    } finally {
-      Closeables.close(in, true);
     }
 
     return result;
@@ -202,9 +199,8 @@ public class IDReader {
 
     if (pathString != null) {
       result = new FastIDSet();
-      InputStream in = openFile(pathString);
 
-      try {
+      try (InputStream in = openFile(pathString)){
         for (String line : new FileLineIterable(in)) {
           try {
             result.add(Long.parseLong(line));
@@ -212,8 +208,6 @@ public class IDReader {
             log.warn("line ignored: {}", line);
           }
         }
-      } finally {
-        Closeables.close(in, true);
       }
     }
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
index d9a7d25..4415a55 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
@@ -17,7 +17,10 @@
 
 package org.apache.mahout.cf.taste.hadoop.item;
 
-import com.google.common.collect.Lists;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
 import org.apache.hadoop.mapreduce.Reducer;
 import org.apache.mahout.cf.taste.hadoop.TasteHadoopUtils;
 import org.apache.mahout.math.RandomAccessSparseVector;
@@ -25,9 +28,6 @@ import org.apache.mahout.math.VarIntWritable;
 import org.apache.mahout.math.VarLongWritable;
 import org.apache.mahout.math.Vector;
 
-import java.io.IOException;
-import java.util.List;
-
 /**
  * we use a neat little trick to explicitly filter items for some users: we inject a NaN summand into the preference
  * estimation for those items, which makes {@link org.apache.mahout.cf.taste.hadoop.item.AggregateAndRecommendReducer}
@@ -48,8 +48,8 @@ public class ItemFilterAsVectorAndPrefsReducer
     /* artificial NaN summand to exclude this item from the recommendations for all users specified in userIDs */
     vector.set(itemIDIndex, Double.NaN);
 
-    List<Long> userIDs = Lists.newArrayList();
-    List<Float> prefValues = Lists.newArrayList();
+    List<Long> userIDs = new ArrayList<>();
+    List<Float> prefValues = new ArrayList<>();
     for (VarLongWritable userID : values) {
       userIDs.add(userID.get());
       prefValues.add(1.0f);

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
index 74d30cb..9167437 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
@@ -18,9 +18,9 @@
 package org.apache.mahout.cf.taste.hadoop.item;
 
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 
-import com.google.common.collect.Lists;
 import org.apache.hadoop.mapreduce.Reducer;
 import org.apache.mahout.math.VarIntWritable;
 import org.apache.mahout.math.Vector;
@@ -35,8 +35,8 @@ public final class ToVectorAndPrefReducer extends
                         Iterable<VectorOrPrefWritable> values,
                         Context context) throws IOException, InterruptedException {
 
-    List<Long> userIDs = Lists.newArrayList();
-    List<Float> prefValues = Lists.newArrayList();
+    List<Long> userIDs = new ArrayList<>();
+    List<Float> prefValues = new ArrayList<>();
     Vector similarityMatrixColumn = null;
     for (VectorOrPrefWritable value : values) {
       if (value.getVector() == null) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
index 495a920..11d496f 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
@@ -20,9 +20,9 @@ package org.apache.mahout.cf.taste.hadoop.item;
 import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 
-import com.google.common.collect.Lists;
 import org.apache.hadoop.io.Writable;
 import org.apache.mahout.math.Varint;
 import org.apache.mahout.math.Vector;
@@ -77,8 +77,8 @@ public final class VectorAndPrefsWritable implements Writable {
     writable.readFields(in);
     vector = writable.get();
     int size = Varint.readUnsignedVarInt(in);
-    userIDs = Lists.newArrayListWithCapacity(size);
-    values = Lists.newArrayListWithCapacity(size);
+    userIDs = new ArrayList<>(size);
+    values = new ArrayList<>(size);
     for (int i = 0; i < size; i++) {
       userIDs.add(Varint.readSignedVarLong(in));
       values.add(in.readFloat());

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
index b0ba24d..acb6392 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
@@ -17,13 +17,13 @@
 
 package org.apache.mahout.cf.taste.hadoop.similarity.item;
 
-import com.google.common.collect.Lists;
-import org.apache.lucene.util.PriorityQueue;
-import org.apache.mahout.cf.taste.similarity.precompute.SimilarItem;
-
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.lucene.util.PriorityQueue;
+import org.apache.mahout.cf.taste.similarity.precompute.SimilarItem;
+
 public class TopSimilarItemsQueue extends PriorityQueue<SimilarItem> {
 
   private static final long SENTINEL_ID = Long.MIN_VALUE;
@@ -36,7 +36,7 @@ public class TopSimilarItemsQueue extends PriorityQueue<SimilarItem> {
   }
 
   public List<SimilarItem> getTopItems() {
-    List<SimilarItem> items = Lists.newArrayListWithCapacity(maxSize);
+    List<SimilarItem> items = new ArrayList<>(maxSize);
     while (size() > 0) {
       SimilarItem topItem = pop();
       // filter out "sentinel" objects necessary for maintaining an efficient priority queue

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
index cc91560..3e03108 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
@@ -17,13 +17,13 @@
 
 package org.apache.mahout.cf.taste.impl.common;
 
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.HashSet;
 import java.util.List;
 import java.util.concurrent.Callable;
 import java.util.concurrent.locks.ReentrantLock;
 
-import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
 import org.apache.mahout.cf.taste.common.Refreshable;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -47,7 +47,7 @@ public final class RefreshHelper implements Refreshable {
    *          encapsulates the containing object's own refresh logic
    */
   public RefreshHelper(Callable<?> refreshRunnable) {
-    this.dependencies = Lists.newArrayListWithCapacity(3);
+    this.dependencies = new ArrayList<>(3);
     this.refreshLock = new ReentrantLock();
     this.refreshRunnable = refreshRunnable;
   }
@@ -99,7 +99,7 @@ public final class RefreshHelper implements Refreshable {
    *         param.
    */
   public static Collection<Refreshable> buildRefreshed(Collection<Refreshable> currentAlreadyRefreshed) {
-    return currentAlreadyRefreshed == null ? Sets.<Refreshable>newHashSetWithExpectedSize(3) : currentAlreadyRefreshed;
+    return currentAlreadyRefreshed == null ? new HashSet<Refreshable>(3) : currentAlreadyRefreshed;
   }
   
   /**

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
index f6598f3..f926f18 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
@@ -17,6 +17,7 @@
 
 package org.apache.mahout.cf.taste.impl.eval;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
@@ -29,7 +30,7 @@ import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import com.google.common.collect.Lists;
+import com.google.common.base.Preconditions;
 import org.apache.mahout.cf.taste.common.NoSuchItemException;
 import org.apache.mahout.cf.taste.common.NoSuchUserException;
 import org.apache.mahout.cf.taste.common.TasteException;
@@ -51,8 +52,6 @@ import org.apache.mahout.common.RandomUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.base.Preconditions;
-
 /**
  * Abstract superclass of a couple implementations, providing shared functionality.
  */
@@ -142,12 +141,12 @@ public abstract class AbstractDifferenceRecommenderEvaluator implements Recommen
       Preference newPref = new GenericPreference(userID, prefs.getItemID(i), prefs.getValue(i));
       if (random.nextDouble() < trainingPercentage) {
         if (oneUserTrainingPrefs == null) {
-          oneUserTrainingPrefs = Lists.newArrayListWithCapacity(3);
+          oneUserTrainingPrefs = new ArrayList<>(3);
         }
         oneUserTrainingPrefs.add(newPref);
       } else {
         if (oneUserTestPrefs == null) {
-          oneUserTestPrefs = Lists.newArrayListWithCapacity(3);
+          oneUserTestPrefs = new ArrayList<>(3);
         }
         oneUserTestPrefs.add(newPref);
       }
@@ -173,7 +172,7 @@ public abstract class AbstractDifferenceRecommenderEvaluator implements Recommen
   private double getEvaluation(FastByIDMap<PreferenceArray> testPrefs, Recommender recommender)
     throws TasteException {
     reset();
-    Collection<Callable<Void>> estimateCallables = Lists.newArrayList();
+    Collection<Callable<Void>> estimateCallables = new ArrayList<>();
     AtomicInteger noEstimateCounter = new AtomicInteger();
     for (Map.Entry<Long,PreferenceArray> entry : testPrefs.entrySet()) {
       estimateCallables.add(
@@ -217,7 +216,7 @@ public abstract class AbstractDifferenceRecommenderEvaluator implements Recommen
   private static Collection<Callable<Void>> wrapWithStatsCallables(Iterable<Callable<Void>> callables,
                                                                    AtomicInteger noEstimateCounter,
                                                                    RunningAverageAndStdDev timing) {
-    Collection<Callable<Void>> wrapped = Lists.newArrayList();
+    Collection<Callable<Void>> wrapped = new ArrayList<>();
     int count = 0;
     for (Callable<Void> callable : callables) {
       boolean logStats = count++ % 1000 == 0; // log every 1000 or so iterations

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
index b0ef18c..f4e4522 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
@@ -17,7 +17,6 @@
 
 package org.apache.mahout.cf.taste.impl.eval;
 
-import com.google.common.collect.Lists;
 import org.apache.mahout.cf.taste.common.TasteException;
 import org.apache.mahout.cf.taste.eval.RelevantItemsDataSplitter;
 import org.apache.mahout.cf.taste.impl.common.FastByIDMap;
@@ -27,6 +26,7 @@ import org.apache.mahout.cf.taste.model.DataModel;
 import org.apache.mahout.cf.taste.model.Preference;
 import org.apache.mahout.cf.taste.model.PreferenceArray;
 
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
@@ -62,7 +62,7 @@ public final class GenericRelevantItemsDataSplitter implements RelevantItemsData
     // If we're dealing with the very user that we're evaluating for precision/recall,
     if (userID == otherUserID) {
       // then must remove all the test IDs, the "relevant" item IDs
-      List<Preference> prefs2 = Lists.newArrayListWithCapacity(prefs2Array.length());
+      List<Preference> prefs2 = new ArrayList<>(prefs2Array.length());
       for (Preference pref : prefs2Array) {
         prefs2.add(pref);
       }

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
index abb5ed8..2d27a37 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
@@ -17,11 +17,11 @@
 
 package org.apache.mahout.cf.taste.impl.eval;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.concurrent.Callable;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import com.google.common.collect.Lists;
 import org.apache.mahout.cf.taste.common.TasteException;
 import org.apache.mahout.cf.taste.impl.common.FullRunningAverageAndStdDev;
 import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
@@ -48,7 +48,7 @@ public final class LoadEvaluator {
     LongPrimitiveIterator userSampler =
         SamplingLongPrimitiveIterator.maybeWrapIterator(dataModel.getUserIDs(), sampleRate);
     recommender.recommend(userSampler.next(), howMany); // Warm up
-    Collection<Callable<Void>> callables = Lists.newArrayList();
+    Collection<Callable<Void>> callables = new ArrayList<>();
     while (userSampler.hasNext()) {
       callables.add(new LoadCallable(recommender, userSampler.next()));
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
index 94f2d0b..6efa6fa 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
@@ -19,10 +19,9 @@ package org.apache.mahout.cf.taste.impl.model;
 
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;
-
 import java.util.Collection;
 
-import com.google.common.base.Charsets;
+import org.apache.commons.io.Charsets;
 import org.apache.mahout.cf.taste.common.Refreshable;
 import org.apache.mahout.cf.taste.model.IDMigrator;
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
index da6845e..aa8e8d2 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
@@ -21,6 +21,7 @@ import java.io.File;
 import java.io.FileFilter;
 import java.io.FileNotFoundException;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
@@ -28,6 +29,9 @@ import java.util.Map;
 import java.util.TreeMap;
 import java.util.concurrent.locks.ReentrantLock;
 
+import com.google.common.base.Preconditions;
+import com.google.common.base.Splitter;
+import com.google.common.io.Closeables;
 import org.apache.mahout.cf.taste.common.Refreshable;
 import org.apache.mahout.cf.taste.common.TasteException;
 import org.apache.mahout.cf.taste.impl.common.FastByIDMap;
@@ -45,11 +49,6 @@ import org.apache.mahout.common.iterator.FileLineIterator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.base.Preconditions;
-import com.google.common.base.Splitter;
-import com.google.common.collect.Lists;
-import com.google.common.io.Closeables;
-
 /**
  * <p>
  * A {@link DataModel} backed by a delimited file. This class expects a file where each line
@@ -207,7 +206,7 @@ public class FileDataModel extends AbstractDataModel {
         throw new IllegalArgumentException("Did not find a delimiter(pattern) in first line");
       }
     }
-    List<String> firstLineSplit = Lists.newArrayList();
+    List<String> firstLineSplit = new ArrayList<>();
     for (String token : delimiterPattern.split(firstLine)) {
       firstLineSplit.add(token);
     }
@@ -526,7 +525,7 @@ public class FileDataModel extends AbstractDataModel {
 
         if (!exists) {
           if (prefs == null) {
-            prefs = Lists.newArrayListWithCapacity(2);
+            prefs = new ArrayList<>(2);
             ((FastByIDMap<Collection<Preference>>) data).put(userID, prefs);
           }
           prefs.add(new GenericPreference(userID, itemID, preferenceValue));

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
index 413db4b..6dc8aa5 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
@@ -17,7 +17,6 @@
 
 package org.apache.mahout.cf.taste.impl.recommender;
 
-import org.apache.mahout.cf.taste.recommender.CandidateItemsStrategy;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
@@ -31,6 +30,7 @@ import org.apache.mahout.cf.taste.impl.common.RefreshHelper;
 import org.apache.mahout.cf.taste.impl.common.RunningAverage;
 import org.apache.mahout.cf.taste.model.DataModel;
 import org.apache.mahout.cf.taste.model.PreferenceArray;
+import org.apache.mahout.cf.taste.recommender.CandidateItemsStrategy;
 import org.apache.mahout.cf.taste.recommender.IDRescorer;
 import org.apache.mahout.cf.taste.recommender.ItemBasedRecommender;
 import org.apache.mahout.cf.taste.recommender.MostSimilarItemsCandidateItemsStrategy;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
index ef11f0d..08aa5ae 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
@@ -17,11 +17,11 @@
 
 package org.apache.mahout.cf.taste.impl.recommender;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Random;
 
-import com.google.common.collect.Lists;
 import org.apache.mahout.cf.taste.common.Refreshable;
 import org.apache.mahout.cf.taste.common.TasteException;
 import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
@@ -68,7 +68,7 @@ public final class RandomRecommender extends AbstractRecommender {
     throws TasteException {
     DataModel dataModel = getDataModel();
     int numItems = dataModel.getNumItems();
-    List<RecommendedItem> result = Lists.newArrayListWithCapacity(howMany);
+    List<RecommendedItem> result = new ArrayList<>(howMany);
     while (result.size() < howMany) {
       LongPrimitiveIterator it = dataModel.getItemIDs();
       it.skip(random.nextInt(numItems));

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
index 3c27145..f7b4385 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
@@ -17,13 +17,14 @@
 
 package org.apache.mahout.cf.taste.impl.recommender;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.PriorityQueue;
 import java.util.Queue;
 
-import com.google.common.collect.Lists;
+import com.google.common.base.Preconditions;
 import org.apache.mahout.cf.taste.common.NoSuchItemException;
 import org.apache.mahout.cf.taste.common.NoSuchUserException;
 import org.apache.mahout.cf.taste.common.TasteException;
@@ -33,8 +34,6 @@ import org.apache.mahout.cf.taste.impl.similarity.GenericUserSimilarity;
 import org.apache.mahout.cf.taste.recommender.IDRescorer;
 import org.apache.mahout.cf.taste.recommender.RecommendedItem;
 
-import com.google.common.base.Preconditions;
-
 /**
  * <p>
  * A simple class that refactors the "find top N things" logic that is used in several places.
@@ -83,7 +82,7 @@ public final class TopItems {
     if (size == 0) {
       return Collections.emptyList();
     }
-    List<RecommendedItem> result = Lists.newArrayListWithCapacity(size);
+    List<RecommendedItem> result = new ArrayList<>(size);
     result.addAll(topItems);
     Collections.sort(result, ByValueRecommendedItemComparator.getInstance());
     return result;
@@ -123,7 +122,7 @@ public final class TopItems {
     if (size == 0) {
       return NO_IDS;
     }
-    List<SimilarUser> sorted = Lists.newArrayListWithCapacity(size);
+    List<SimilarUser> sorted = new ArrayList<>(size);
     sorted.addAll(topUsers);
     Collections.sort(sorted);
     long[] result = new long[size];
@@ -168,7 +167,7 @@ public final class TopItems {
     if (size == 0) {
       return Collections.emptyList();
     }
-    List<GenericItemSimilarity.ItemItemSimilarity> result = Lists.newArrayListWithCapacity(size);
+    List<GenericItemSimilarity.ItemItemSimilarity> result = new ArrayList<>(size);
     result.addAll(topSimilarities);
     Collections.sort(result);
     return result;
@@ -199,7 +198,7 @@ public final class TopItems {
     if (size == 0) {
       return Collections.emptyList();
     }
-    List<GenericUserSimilarity.UserUserSimilarity> result = Lists.newArrayListWithCapacity(size);
+    List<GenericUserSimilarity.UserUserSimilarity> result = new ArrayList<>(size);
     result.addAll(topSimilarities);
     Collections.sort(result);
     return result;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
index 33be59d..0ba5139 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
@@ -17,7 +17,13 @@
 
 package org.apache.mahout.cf.taste.impl.recommender.svd;
 
-import com.google.common.collect.Lists;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Random;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.TimeUnit;
+
 import org.apache.mahout.cf.taste.common.TasteException;
 import org.apache.mahout.cf.taste.impl.common.FullRunningAverage;
 import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
@@ -31,17 +37,10 @@ import org.apache.mahout.math.SequentialAccessSparseVector;
 import org.apache.mahout.math.Vector;
 import org.apache.mahout.math.als.AlternatingLeastSquaresSolver;
 import org.apache.mahout.math.als.ImplicitFeedbackAlternatingLeastSquaresSolver;
+import org.apache.mahout.math.map.OpenIntObjectHashMap;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.apache.mahout.math.map.OpenIntObjectHashMap;
-
-import java.util.List;
-import java.util.Random;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.TimeUnit;
-
 /**
  * factorizes the rating matrix using "Alternating-Least-Squares with Weighted-λ-Regularization" as described in
  * <a href="http://www.hpl.hp.com/personal/Robert_Schreiber/papers/2008%20AAIM%20Netflix/netflix_aaim08(submitted).pdf">
@@ -191,7 +190,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
           queue.execute(new Runnable() {
             @Override
             public void run() {
-              List<Vector> featureVectors = Lists.newArrayList();
+              List<Vector> featureVectors = new ArrayList<>();
               while (itemIDsFromUser.hasNext()) {
                 long itemID = itemIDsFromUser.nextLong();
                 featureVectors.add(features.getItemFeatureColumn(itemIndex(itemID)));
@@ -229,7 +228,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
           queue.execute(new Runnable() {
             @Override
             public void run() {
-              List<Vector> featureVectors = Lists.newArrayList();
+              List<Vector> featureVectors = new ArrayList<>();
               for (Preference pref : itemPrefs) {
                 long userID = pref.getUserID();
                 featureVectors.add(features.getUserFeatureColumn(userIndex(userID)));
@@ -272,7 +271,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
   //TODO find a way to get rid of the object overhead here
   protected OpenIntObjectHashMap<Vector> itemFeaturesMapping(LongPrimitiveIterator itemIDs, int numItems,
       double[][] featureMatrix) {
-    OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<Vector>(numItems);
+    OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<>(numItems);
     while (itemIDs.hasNext()) {
       long itemID = itemIDs.next();
       int itemIndex = itemIndex(itemID);
@@ -284,7 +283,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
 
   protected OpenIntObjectHashMap<Vector> userFeaturesMapping(LongPrimitiveIterator userIDs, int numUsers,
       double[][] featureMatrix) {
-    OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<Vector>(numUsers);
+    OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<>(numUsers);
 
     while (userIDs.hasNext()) {
       long userID = userIDs.next();

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
index d1d23a5..08c038a 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
@@ -30,7 +30,6 @@ import java.io.IOException;
 import java.util.Map;
 
 import com.google.common.base.Preconditions;
-import com.google.common.io.Closeables;
 import org.apache.mahout.cf.taste.common.NoSuchItemException;
 import org.apache.mahout.cf.taste.common.NoSuchUserException;
 import org.apache.mahout.cf.taste.impl.common.FastByIDMap;
@@ -57,25 +56,17 @@ public class FilePersistenceStrategy implements PersistenceStrategy {
       log.info("{} does not yet exist, no factorization found", file.getAbsolutePath());
       return null;
     }
-    DataInputStream in = null;
-    try {
+    try (DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(file)))){
       log.info("Reading factorization from {}...", file.getAbsolutePath());
-      in = new DataInputStream(new BufferedInputStream(new FileInputStream(file)));
       return readBinary(in);
-    } finally {
-      Closeables.close(in, true);
     }
   }
 
   @Override
   public void maybePersist(Factorization factorization) throws IOException {
-    DataOutputStream out = null;
-    try {
+    try (DataOutputStream out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))){
       log.info("Writing factorization to {}...", file.getAbsolutePath());
-      out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)));
       writeBinary(factorization, out);
-    } finally {
-      Closeables.close(out, false);
     }
   }
 
@@ -118,7 +109,7 @@ public class FilePersistenceStrategy implements PersistenceStrategy {
     int numUsers = in.readInt();
     int numItems = in.readInt();
 
-    FastByIDMap<Integer> userIDMapping = new FastByIDMap<Integer>(numUsers);
+    FastByIDMap<Integer> userIDMapping = new FastByIDMap<>(numUsers);
     double[][] userFeatures = new double[numUsers][numFeatures];
 
     for (int n = 0; n < numUsers; n++) {
@@ -130,7 +121,7 @@ public class FilePersistenceStrategy implements PersistenceStrategy {
       }
     }
 
-    FastByIDMap<Integer> itemIDMapping = new FastByIDMap<Integer>(numItems);
+    FastByIDMap<Integer> itemIDMapping = new FastByIDMap<>(numItems);
     double[][] itemFeatures = new double[numItems][numFeatures];
 
     for (int n = 0; n < numItems; n++) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
index 8967134..20446f8 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
@@ -17,14 +17,14 @@
 
 package org.apache.mahout.cf.taste.impl.recommender.svd;
 
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
+import org.apache.mahout.cf.taste.common.TasteException;
 import org.apache.mahout.cf.taste.impl.common.FastIDSet;
 import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
+import org.apache.mahout.cf.taste.model.DataModel;
 import org.apache.mahout.common.RandomUtils;
 
-import org.apache.mahout.cf.taste.common.TasteException;
-import org.apache.mahout.cf.taste.model.DataModel;
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Random;
@@ -80,13 +80,13 @@ public final class SVDPlusPlusFactorizer extends RatingSGDFactorizer {
     }
 
     /* get internal item IDs which we will need several times */
-    itemsByUser = Maps.newHashMap();
+    itemsByUser = new HashMap<>();
     LongPrimitiveIterator userIDs = dataModel.getUserIDs();
     while (userIDs.hasNext()) {
       long userId = userIDs.nextLong();
       int userIndex = userIndex(userId);
       FastIDSet itemIDsFromUser = dataModel.getItemIDsFromUser(userId);
-      List<Integer> itemIndexes = Lists.newArrayListWithCapacity(itemIDsFromUser.size());
+      List<Integer> itemIndexes = new ArrayList<>(itemIDsFromUser.size());
       itemsByUser.put(userIndex, itemIndexes);
       for (long itemID2 : itemIDsFromUser) {
         int i2 = itemIndex(itemID2);

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
index ca0e0b2..631ec9b 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
@@ -23,8 +23,8 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.OutputStreamWriter;
 
-import com.google.common.base.Charsets;
 import com.google.common.io.Closeables;
+import org.apache.commons.io.Charsets;
 import org.apache.mahout.cf.taste.similarity.precompute.SimilarItem;
 import org.apache.mahout.cf.taste.similarity.precompute.SimilarItems;
 import org.apache.mahout.cf.taste.similarity.precompute.SimilarItemsWriter;

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java b/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
index 0baa4bf..73ba521 100644
--- a/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
+++ b/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
@@ -19,17 +19,17 @@ package org.apache.mahout.classifier;
 
 import java.util.Collection;
 import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.Map;
 
+import com.google.common.base.Preconditions;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.math3.stat.descriptive.moment.Mean;
 import org.apache.mahout.cf.taste.impl.common.FullRunningAverageAndStdDev;
 import org.apache.mahout.cf.taste.impl.common.RunningAverageAndStdDev;
 import org.apache.mahout.math.DenseMatrix;
 import org.apache.mahout.math.Matrix;
-
-import com.google.common.base.Preconditions;
-import com.google.common.collect.Maps;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -42,7 +42,7 @@ import org.slf4j.LoggerFactory;
  */
 public class ConfusionMatrix {
   private static final Logger LOG = LoggerFactory.getLogger(ConfusionMatrix.class);
-  private final Map<String,Integer> labelMap = Maps.newLinkedHashMap();
+  private final Map<String,Integer> labelMap = new LinkedHashMap<>();
   private final int[][] confusionMatrix;
   private int samples = 0;
   private String defaultLabel = "unknown";
@@ -333,7 +333,7 @@ public class ConfusionMatrix {
         m.set(r, c, confusionMatrix[r][c]);
       }
     }
-    Map<String,Integer> labels = Maps.newHashMap();
+    Map<String,Integer> labels = new HashMap<>();
     for (Map.Entry<String, Integer> entry : labelMap.entrySet()) {
       labels.put(entry.getKey(), entry.getValue());
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java b/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
index 5d8b9ed..35c11ee 100644
--- a/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
+++ b/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
@@ -19,10 +19,10 @@ package org.apache.mahout.classifier;
 
 import java.text.DecimalFormat;
 import java.text.NumberFormat;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Locale;
 
-import com.google.common.collect.Lists;
 import org.apache.commons.lang3.StringUtils;
 
 /**
@@ -56,7 +56,7 @@ public class RegressionResultAnalyzer {
    */
   public void addInstance(double actual, double result) {
     if (results == null) {
-      results = Lists.newArrayList();
+      results = new ArrayList<>();
     }
     results.add(new Result(actual, result));
   }