Um projeto de aplicativo corporativo contém a hierarquia de recursos que são necessários para implementar um aplicativo corporativo J2EE, referido freqüentemente como um arquivo EAR.
Um projeto de aplicativo corporativo também contém um conjunto de referências a outros módulos J2EE e projetos Java™ que são combinados para compor um arquivo EAR. Esses projetos podem ser módulos da Web, módulos EJB, módulos do cliente aplicativo, módulos conectores, arquivos JAR Java de utilidade geral e arquivos JAR do cliente EJB. Os projetos de aplicativo corporativo criados no ambiente de trabalho incluem um descritor de implementação, assim como arquivos comuns a todos os módulos J2EE definidos no descritor de implementação.
Quando um projeto de módulo J2EE é criado, ele pode ser associado a um projeto de aplicativo corporativo. Os assistentes do projeto prestam ajuda permitindo especificar um projeto de aplicativo corporativo novo ou existente. Os projetos de aplicativo corporativo são exportados como arquivos EAR (enterprise archive) que incluem todos os arquivos definidos no projeto de aplicativo corporativo, assim como o arquivo archive apropriado para cada módulo J2EE ou projeto JAR utilitário definido no descritor de implementação, como arquivos WAR (Web archive) e JAR EJB.
Um aplicativo corporativo pode conter arquivos JAR utilitários que devem ser utilizados pelos módulos contidos. Isso permite o compartilhamento de código no nível do aplicativo por vários módulos de cliente aplicativo, da Web ou EJB. Esses arquivos JAR são comumente referidos como arquivos JAR utilitários. Os arquivos JAR utilitários definidos para um projeto de aplicativo corporativo podem ser arquivos JAR reais no projeto ou você pode incluir projetos Java utilitários designados a tornarem-se os arquivos JAR utilitários durante a montagem e a implementação.
Para iniciar o desenvolvimento de aplicativos J2EE, normalmente você cria primeiro um projeto de aplicativo corporativo para conter os módulos de cliente aplicativo, da Web e EJB. O projeto de aplicativo corporativo é utilizado para compor um aplicativo inteiro a partir de vários módulos. Como nenhum código fonte é construído diretamente em um aplicativo corporativo, esses projetos não são projetos Java e não são compilados pelo construtor Java.