Não sei bem o que você quer dizer com "milissegundos atuais", mas presumo que seja o número de milissegundos desde a "época", ou seja, meia-noite de 1º de janeiro de 1970, UTC.
Se você deseja encontrar o número de milissegundos desde a época no momento, use System.currentTimeMillis()como o Anubian Noob indicou . Nesse caso, não há razão para usar qualquer uma das novas APIs java.time para fazer isso.
No entanto, talvez você já tenha um LocalDateTimeobjeto ou similar de algum lugar e deseje convertê-lo em milissegundos desde a época. Não é possível fazer isso diretamente, pois a LocalDateTimefamília de objetos não tem noção de em que fuso horário eles estão. Portanto, as informações de fuso horário precisam ser fornecidas para encontrar o horário relativo à época, que está no UTC.
Suponha que você tenha um LocalDateTimeseguinte:
LocalDateTime ldt = LocalDateTime.of(2014, 5, 29, 18, 41, 16);
Você precisa aplicar as informações de fuso horário, fornecendo a ZonedDateTime. Estou no mesmo fuso horário de Los Angeles, então eu faria algo assim:
ZonedDateTime zdt = ldt.atZone(ZoneId.of("America/Los_Angeles"));
Obviamente, isso faz suposições sobre o fuso horário. E existem casos extremos que podem ocorrer, por exemplo, se a hora local indicar um horário próximo à transição do horário de verão. Vamos deixar isso de lado, mas você deve estar ciente de que esses casos existem.
De qualquer forma, se você puder obter um válido ZonedDateTime, poderá convertê-lo no número de milissegundos desde a época, da seguinte forma:
long millis = zdt.toInstant().toEpochMilli();
System.currentTimeMillis()?