That is not Java, that is JavaServer Faces.
You cannot - on a general principle - make that happen for other developers. They will circumvent it if needed.
What you can do, is to have a policy enforced that your components are to be used instead of stock JSF ones, and then verify that when building. Either your source repository or your build server (preferred) should test for this and fail the operation. This will also allow a developer to use standard JSF if needed for debugging locally as long as it is not shared.
For checking a JSF page, you can take advantage of it being an XML document and use XSLT to validate all tags and attributes. My approach would be to check the name space on all tags and trigger failure if found in a blacklist.