title: Setting up browsermob proxy with ChromeDriver
body: <p>I'm trying to set up browsermob to work in my selenium project.  I was looking for a way to use ChromeOptions to set the proxy, but all sources tell me to use ChromeOptions for everything else, then convert it into DesiredCapabilities before instantiating a new ChromeDriver instance.</p>
  
  <p>This is my code:</p>
  
  <pre><code>ChromeOptions options = new ChromeOptions();
  // Setting some chrome features here
  
  ProxyServer proxyServer = new ProxyServer(4444);
  proxyServer.start();
  
  Proxy proxy = proxyServer.seleniumProxy();
  
  DesiredCapabilities capabilities = DesiredCapabilities.chrome();
  
  capabilities.setCapability(ChromeOptions.CAPABILITY, options);
  capabilities.setCapability(CapabilityType.PROXY, proxy);
  
  WebDriver driver = new ChromeDriver(capabilities); // Error happens here
  </code></pre>
  
  <p>I'm using Webdriver version 2.44 from the maven repositories.  This is the error I get:</p>
  
  <pre><code>java.lang.IllegalAccessError: tried to access field com.google.gson.JsonNull.INSTANCE from class org.openqa.selenium.remote.BeanToJsonConverter
  </code></pre>
  
  <p>Does anyone know the cause or any alternative solutions for hooking up a proxy to chromedriver?</p>