Use java.time to replace time part in the time instant
<p>I would like to change a time of an instant:</p>

<pre><code>Instant instant = Instant.parse("2016-03-23T17:14:00.092812Z");
LocalTime newTime = LocalTime.parse("12:34:45.567891");
instant.with(newTime);
</code></pre>

<p>I expect to get an instant with the same date, but with the new time, i.e. 2016-03-23 12:34:45.567891.</p>

<p>But it throws the exception:</p>

<pre><code>java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: NanoOfDay
    at java.time.Instant.with(Instant.java:720)
    at java.time.Instant.with(Instant.java:207)
    at java.time.LocalTime.adjustInto(LocalTime.java:1333)
    at java.time.Instant.with(Instant.java:656)
</code></pre>

<p>Any ideas how to fix?</p>