Take note that Java is faster but not all that much.
I take issue with that:
http://benchmarksgame.alioth.debian.org/u64/compare.php?lang=python3&lang2=java
You'll find much bigger differences between Python and Java than between Java and C for example.
HotSpot is a very, very good VM. JIT output isn't an issue, it will use AVX if your CPU supports it, it can de-virtualize calls on the fly based on runtime profiling of the code, it can reorder branches and prune them if necessary based on which one gets executed the most, etc.
The issue generally lies in the amount of indirection which you find in common "idiomatic" Java code. Every object access is a pointer indirection, which is something you can have in mind for the lower layers while designing the project. Then again "pointer chasing" isn't an inherent issue of Java, its just something the language doesn't gives you many tools to mitigate. Java as it is lacks easy ways to control the memory layout of anything (except maybe abusing inheritance and direct buffers, which isn't pretty).
And on a side note, nobody is making Halo alone, regardless of the language used.