 <p>If I've understood it correctly you don't have any problems of library versions and isolation, so independently of if a library is used by all the war archives or not, you can place them all inside the ear's lib directory (you could even consider placing the libraries in the jboss instance lib directory, and removing them from the ear/wars!). This way the ear file will have the smallest size possible.</p> <p>Don't worry about the memory used, the JBoss classloader will just load once the libraries, so they will be shared by all the wars that need them (another case would be if you need a different version of the same library for each war).</p> <p>On the other hand, if any of the libraries is just used by one of the war file, it will also be optimal if you place the library inside this war's lib directory.</p> <p>So your first approach is right, I don't think you need to change it.</p>