Nada disso.
Imagine que você está executando a versão 1.8.0 do Java na sua máquina de desenvolvimento e no servidor. A propósito, você está trabalhando simultaneamente em dois projetos, ambos usando Java.
Um dia, um bug é encontrado na JVM e os servidores que executam o primeiro projeto em que você está trabalhando são migrados para o 1.8.1. A propósito, os servidores que executam o segundo projeto não são afetados pelo bug e são gerenciados por uma equipe diferente de administradores de sistema, que podem não estar dispostos a atualizar para o 1.8.1.
Agora, pelo menos para um dos projetos, você está executando uma versão diferente do Java.
Isso pode não incomodar muito você (até que um servidor migre para 1.9, enquanto o outro mantém a versão antiga), mas isso significa que você não está mais replicando o ambiente de produção em sua máquina local, o que o torna possível que pequenos bugs se infiltrem.
Se você imaginar que seu sistema de arquivos, suas dependências, suas configurações de segurança, sua configuração local e sua própria versão do Linux diferem da produção, você está se arriscando a escrever código que falhará na produção. Em vez de correr esse risco, você pode estar usando a virtualização ou o Docker, com pouca ou nenhuma perda de produtividade.