diff --git a/build.gradle b/build.gradle
index ddc709a..fda54cc 100644
--- a/build.gradle
+++ b/build.gradle
@@ -20,8 +20,8 @@
 }
 
 plugins {
-  id "org.sonarqube" version "1.2"
-  id 'net.saliman.cobertura' version '2.3.0'
+  id "org.sonarqube" version "2.6.2"
+  id 'net.saliman.cobertura' version '2.5.4'
 }
 
 apply plugin: 'java'
@@ -29,8 +29,9 @@
 apply plugin: 'signing'
 //apply plugin: 'checkstyle'
 
-group = 'com.intel.jndn.mock'
-version = '1.1.0'
+// group = 'com.intel.jndn.mock'
+group = 'net.named-data.jndn-extra'
+version = '1.1.1'
 
 sourceCompatibility = JavaVersion.VERSION_1_7
 targetCompatibility = JavaVersion.VERSION_1_7
@@ -47,12 +48,12 @@
 }
 
 dependencies {
-  compile 'net.named-data:jndn:0.13'
+  compile 'net.named-data:jndn:0.17'
 
   testCompile 'junit:junit:4.12'
-  testRuntime 'org.slf4j:slf4j-api:1.7.16'
+  testRuntime 'org.slf4j:slf4j-api:1.7.25'
 
-  checkstyleConfig "com.puppycrawl.tools:checkstyle:6.15"
+  checkstyleConfig "com.puppycrawl.tools:checkstyle:8.11"
 }
 
 task javadocJar(type: Jar) {
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index bdeb380..09f6b42 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -17,4 +17,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-all.zip
diff --git a/src/main/java/com/intel/jndn/mock/MockFace.java b/src/main/java/com/intel/jndn/mock/MockFace.java
index dc1661a..8f2888b 100644
--- a/src/main/java/com/intel/jndn/mock/MockFace.java
+++ b/src/main/java/com/intel/jndn/mock/MockFace.java
@@ -25,6 +25,8 @@
 import net.named_data.jndn.encoding.tlv.TlvDecoder;
 import net.named_data.jndn.security.KeyChain;
 import net.named_data.jndn.security.SecurityException;
+import net.named_data.jndn.security.pib.PibImpl;
+import net.named_data.jndn.security.tpm.TpmBackEnd;
 import net.named_data.jndn.transport.Transport;
 
 import java.nio.ByteBuffer;
@@ -90,7 +92,7 @@
      * Callback called when an Interest is sent out through face (towards NFD).
      * @param interest interest being sent out
      */
-    void emit(final Interest interest);
+    void emit(Interest interest);
   }
 
   /**
@@ -102,7 +104,7 @@
      *
      * @param data data being sent out
      */
-    void emit(final Data data);
+    void emit(Data data);
   }
 
   /**
@@ -296,7 +298,7 @@
       data.setContent(response.wireEncode());
       try {
         keyChain.sign(data);
-      } catch (SecurityException e) {
+      } catch (SecurityException | KeyChain.Error | TpmBackEnd.Error | PibImpl.Error e) {
         LOGGER.log(Level.FINE, "MockKeyChain signing failed", e);
       }
 
diff --git a/src/main/java/com/intel/jndn/mock/forwarder/OnPrefixRegistration.java b/src/main/java/com/intel/jndn/mock/forwarder/OnPrefixRegistration.java
index 3bbf56e..670445a 100644
--- a/src/main/java/com/intel/jndn/mock/forwarder/OnPrefixRegistration.java
+++ b/src/main/java/com/intel/jndn/mock/forwarder/OnPrefixRegistration.java
@@ -24,6 +24,8 @@
 import net.named_data.jndn.encoding.EncodingException;
 import net.named_data.jndn.security.KeyChain;
 import net.named_data.jndn.security.SecurityException;
+import net.named_data.jndn.security.pib.PibImpl;
+import net.named_data.jndn.security.tpm.TpmBackEnd;
 import net.named_data.jndn.transport.Transport;
 
 import java.io.IOException;
@@ -96,7 +98,7 @@
   private void signResponse(Data data) {
     try {
       keyChain.sign(data);
-    } catch (SecurityException e) {
+    } catch (SecurityException | KeyChain.Error | TpmBackEnd.Error | PibImpl.Error e) {
       LOGGER.log(Level.FINE, "MockKeyChain signing failed", e);
     }
   }
