This may have been a misparse. java.net.URI specifies that
a URI is of the form:
URI ::= [SCHEME-PART:]SCHEME-SPECIFIC-PART

The scheme-specific-part may be parsed in numerous ways, but if
it starts with a '/' character, that makes it a \"hierarchical URI\",
subject to the following parsing:
SCHEME-SPECIFIC-PART ::= \"//\" AUTHORITY-PART
AUTHORITY-PART ::= [USER-INFO-PART] HOSTNAME [ \":\" PORT ]

In Hadoop, we require a host-based authority as well.
java.net.URI parses left-to-right, so deprecated hostnames of the
form 'foo:8020' will have 'foo' as their scheme and '8020' as their
scheme-specific-part. We don't want this behavior.