In practice the suffix is required. The deployment unit processors need to know whether they are interested in the deployment, and in the end that gets back to some DUP or other checking the suffix. The alternative would be DUPs speculatively digging into the deployment, checking for deployment descriptors or annotations and the like and that would be more expensive, likely buggy (e.g. false positives when some class in the classpath includes an annotation not relevant to the deployment) and could mess up some use cases where we want to defer classloading.