diff --git a/src/main/java/org/apache/accumulo/examples/reservations/ARS.java b/src/main/java/org/apache/accumulo/examples/reservations/ARS.java
index e456c4c..572487b 100644
--- a/src/main/java/org/apache/accumulo/examples/reservations/ARS.java
+++ b/src/main/java/org/apache/accumulo/examples/reservations/ARS.java
@@ -301,13 +301,15 @@
       } else if (tokens[0].equals("quit") && tokens.length == 1) {
         break;
       } else if (tokens[0].equals("connect") && tokens.length == 6 && ars == null) {
-        try (AccumuloClient client = Accumulo.newClient().to(tokens[1], tokens[2])
-            .as(tokens[3], tokens[4]).build()) {
-          if (client.tableOperations().exists(tokens[5])) {
-            ars = new ARS(client, tokens[5]);
-            reader.println("  connected");
-          } else
-            reader.println("  No Such Table");
+
+        // the client can't be closed here, because it is passed to the new ARS object
+        AccumuloClient client = Accumulo.newClient().to(tokens[1], tokens[2])
+            .as(tokens[3], tokens[4]).build();
+        if (client.tableOperations().exists(tokens[5])) {
+          ars = new ARS(client, tokens[5]);
+          reader.println("  connected");
+        } else {
+          reader.println("  No Such Table");
         }
       } else {
         System.out.println("  Commands : ");
