JCR (JSR-170) is the a standard Java API for content repositories. It provides an interface for Java applications to interact with content repositories, however it does not provide a repository implementation.
Apache Jackrabbit is an open source content repository implementation that fully implements the JCR API.
Adobe CRX is the commercial content repository component used in the AEM, which uses some elements of Jackrabbit (e.g. some of the security APIs). CRX provides additional features such as development tools & clustering capabilities and has its own storage mechanism which differs from the Jackrabbit implementation.