В java EE какие банки я должен поместить в библиотеку dir?

У меня есть проект Java EE. Проект построен с использованием maven в .ear архив. Существует библиотека jar, содержащая блок персистентности JPA 2, который находится в каталоге библиотеки уха (так что его могут использовать несколько других модулей).

При добавлении реализации СироУ интерфейса разрешения в качестве сущности в этом модуле персистентности у меня были проблемы с тем, чтобы ухо правильно развернуть, потому что классы Широ были недоступны в модуле постоянства. В конце концов я понял, что мне нужно поместить все зависимости (примененные также к транзитивным командам) библиотечного фляги в каталог библиотеки, чтобы заставить его развернуться.

Итак, окончательный макет выглядит примерно так:

ear
`- lib
   `- persistence-unit.jar
    - shiro-core.jar
    - slf4j-api.jar
 - module1
 - moduleN
 - library1.jar
 - libraryN.jar

Теперь по вопросам:

Есть ли какие-то руководящие указания относительно того, что следует поместить в каталог библиотеки, и является ли мое решение в целом приемлемым?Почему неt библиотеки в корне уха доступны для jar в каталоге lib?Почему нетМожет ли это выяснить автоматически?

РЕДАКТИРОВАТЬ: pom.xml для уха



    4.0.0

    ear
    ear

    
        com.example
        project
        1.0-SNAPSHOT
    

    
        
            
                org.apache.maven.plugins
                maven-ear-plugin
                2.7
                
                    
                        
                            
                        
                        
                            
                        
                        
                            com.example
                            persistence-unit
                            lib
                        

                        
                        
                            org.apache.shiro
                            shiro-core
                            lib
                        
                        
                            org.slf4j
                            slf4j-api
                            lib
                        
                    
                
            
        
    

    
        
            com.example
            persistence-unit
        
        
            
            war
        
        
            
            ejb
        

        
            org.apache.shiro
            shiro-core
        
    

И для персистентности блока:



    4.0.0

    persistence-unit
    jar

    
        com.example
        project
        1.0-SNAPSHOT
    

    
        
            org.jboss.spec
            jboss-javaee-6.0
            pom
            provided
        
        
            org.apache.shiro
            shiro-core
        
    

Ответы на вопрос(3)

Ваш ответ на вопрос